P4C
The P4 Compiler
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
json::obj Class Referenceabstract
Inheritance diagram for json::obj:
[legend]

Classes

struct  ptrless
 

Public Member Functions

 obj (const obj &)=default
 
 obj (obj &&)=default
 
virtual mapas_map ()
 
virtual const mapas_map () const
 
virtual numberas_number ()
 
virtual const numberas_number () const
 
virtual stringas_string ()
 
virtual const stringas_string () const
 
virtual vectoras_vector ()
 
virtual const vectoras_vector () const
 
virtual const char * c_str () const
 
virtual std::unique_ptr< objclone () const =0
 
virtual std::unique_ptr< objcopy () &&=0
 
template<class T>
bool is () const
 
bool operator!= (const char *str) const
 
bool operator!= (const obj &a) const
 
bool operator!= (int64_t val) const
 
virtual bool operator< (const obj &a) const =0
 
bool operator<= (const obj &a) const
 
objoperator= (const obj &) &=default
 
objoperator= (obj &&) &=default
 
virtual bool operator== (const char *) const
 
virtual bool operator== (const obj &a) const =0
 
virtual bool operator== (const std::string &) const
 
virtual bool operator== (const string &) const
 
virtual bool operator== (int64_t) const
 
bool operator> (const obj &a) const
 
bool operator>= (const obj &a) const
 
virtual void print_on (std::ostream &out, int=0, int=80, const char *="") const =0
 
virtual bool test_width (int &limit) const =0
 
template<class T>
T & to ()
 
template<class T>
const T & to () const
 
std::string toString () const
 

Static Public Member Functions

static std::unique_ptr< objclone_ptr (const std::unique_ptr< obj > &a)