P4C
The P4 Compiler
Loading...
Searching...
No Matches
P4::P4Tools::P4Smith::DeclarationGenerator Class Reference
Inheritance diagram for P4::P4Tools::P4Smith::DeclarationGenerator:
[legend]

Public Member Functions

 DeclarationGenerator (const SmithTarget &target)
 
virtual IR::P4Action * genActionDeclaration ()
 
virtual IR::Annotations * genAnnotation ()
 
virtual IR::Declaration_Constant * genConstantDeclaration ()
 
virtual IR::P4Control * genControlDeclaration ()
 
virtual IR::Declaration_Instance * genControlDeclarationInstance ()
 
virtual IR::Type * genDerivedTypeDeclaration ()
 
virtual IR::Type_Enum * genEnumDeclaration (cstring name)
 
virtual IR::Type * genEnumTypeDeclaration (int type)
 
virtual IR::StatOrDecl * generateRandomStatementOrDeclaration (bool is_in_func)
 
virtual IR::Method * genExternDeclaration ()
 
virtual IR::Function * genFunctionDeclaration ()
 
virtual IR::Type * genHeaderStackType ()
 
virtual IR::Type_Struct * genHeaderStruct ()
 
virtual IR::Type_Header * genHeaderTypeDeclaration ()
 
virtual IR::Type_HeaderUnion * genHeaderUnionDeclaration ()
 
virtual IR::IndexedVector< IR::Declaration_ID > genIdentifierList (size_t len)
 
virtual IR::IndexedVector< IR::Declaration > genLocalControlDecls ()
 
virtual IR::Type_Newtype * genNewtype ()
 
virtual IR::Parameter * genParameter (IR::Direction dir, cstring p_name, cstring t_name)
 
virtual IR::ParameterList * genParameterList ()
 
virtual IR::Type_SerEnum * genSerEnumDeclaration (cstring name)
 
virtual IR::IndexedVector< IR::SerEnumMember > genSpecifiedIdentifier (size_t len)
 
virtual IR::IndexedVector< IR::SerEnumMember > genSpecifiedIdentifierList (size_t len)
 
virtual IR::Type_Struct * genStructTypeDeclaration ()
 
virtual const IR::Type * genType ()
 
virtual IR::Type_Declaration * genTypeDeclaration ()
 
virtual IR::Type_Typedef * genTypeDef ()
 
virtual IR::Type * genTypeDefOrNewType ()
 
virtual IR::Parameter * genTypedParameter (bool if_none_dir)
 
virtual IR::Declaration_Variable * genVariableDeclaration ()
 
- Public Member Functions inherited from P4::P4Tools::P4Smith::Generator
 Generator (const SmithTarget &target)
 
const SmithTargettarget ()
 

Static Public Member Functions

static IR::Type_Header * genEthernetHeaderType ()
 

Static Public Attributes

static constexpr size_t MAX_HEADER_STACK_SIZE = 10