P4C
The P4 Compiler
 
Loading...
Searching...
No Matches
P4::TypeInference Member List

This is the complete list of members for P4::TypeInference, including all inherited members.

actionCall(bool inActionList, const IR::MethodCallExpression *actionCall) (defined in P4::TypeInference)P4::TypeInferenceprotected
addSubstitutions(const TypeVariableSubstitution *tvs) (defined in P4::TypeInference)P4::TypeInferenceprotected
apply_visitor(const IR::Node *, const char *name=0) override (defined in P4::TypeInference)P4::TypeInference
assignment(const IR::Node *errorPosition, const IR::Type *destType, const IR::Expression *sourceExpression)P4::TypeInferenceprotected
binaryArith(const IR::Operation_Binary *op) (defined in P4::TypeInference)P4::TypeInferenceprotected
binaryBool(const IR::Operation_Binary *op) (defined in P4::TypeInference)P4::TypeInferenceprotected
canCastBetween(const IR::Type *dest, const IR::Type *src) const (defined in P4::TypeInference)P4::TypeInferenceprotected
canonicalize(const IR::Type *type)P4::TypeInferenceprotectedvirtual
canonicalizeFields(const IR::Type_StructLike *type, std::function< const IR::Type *(const IR::IndexedVector< IR::StructField > *)> constructor) (defined in P4::TypeInference)P4::TypeInferenceprotected
canonicalizeParameters(const IR::ParameterList *params) (defined in P4::TypeInference)P4::TypeInferenceprotectedvirtual
checkAbstractMethods(const IR::Declaration_Instance *inst, const IR::Type_Extern *type) (defined in P4::TypeInference)P4::TypeInferenceprotected
checkArrays (defined in P4::TypeInference)P4::TypeInferenceprotected
checkExternConstructor(const IR::Node *errorPosition, const IR::Type_Extern *ext, const IR::Vector< IR::Argument > *arguments) (defined in P4::TypeInference)P4::TypeInferenceprotected
checkParameters(const IR::ParameterList *paramList, bool forbidModules=false, bool forbidPackage=false) const (defined in P4::TypeInference)P4::TypeInferenceprotected
checkUnderlyingEnumType(const IR::Type *enumType)P4::TypeInferenceprotected
clone() const override (defined in P4::TypeInference)P4::TypeInference
cloneWithFreshTypeVariables(const IR::IMayBeGenericType *type) (defined in P4::TypeInference)P4::TypeInferenceprotected
compare(const IR::Node *errorPosition, const IR::Type *ltype, const IR::Type *rtype, Comparison *compare) (defined in P4::TypeInference)P4::TypeInference
constantFold(const IR::Expression *expression) (defined in P4::TypeInference)P4::TypeInferenceprotected
containerInstantiation(const IR::Node *node, const IR::Vector< IR::Argument > *args, const IR::IContainer *container)P4::TypeInferenceprotected
containsActionEnum(const IR::Type *type) const (defined in P4::TypeInference)P4::TypeInferenceprotected
containsHeader(const IR::Type *canonType) (defined in P4::TypeInference)P4::TypeInferenceprotected
currentActionListP4::TypeInferenceprotected
done() const (defined in P4::TypeInference)P4::TypeInferenceprotected
end_apply(const IR::Node *Node) override (defined in P4::TypeInference)P4::TypeInference
forbidModules (defined in P4::TypeInference)P4::TypeInferenceprotectedstatic
forbidPackages (defined in P4::TypeInference)P4::TypeInferenceprotectedstatic
getType(const IR::Node *element) const (defined in P4::TypeInference)P4::TypeInferenceprotected
getTypeType(const IR::Node *element) const (defined in P4::TypeInference)P4::TypeInferenceprotected
init_apply(const IR::Node *node) override (defined in P4::TypeInference)P4::TypeInference
isCompileTimeConstant(const IR::Expression *expression) const (defined in P4::TypeInference)P4::TypeInferenceinlineprotected
isLeftValue(const IR::Expression *expression) const (defined in P4::TypeInference)P4::TypeInferenceinlineprotected
learn(const IR::Node *node, Visitor *caller) (defined in P4::TypeInference)P4::TypeInference
matchCase(const IR::SelectExpression *select, const IR::Type_BaseList *selectType, const IR::SelectCase *selectCase, const IR::Type *caseType) (defined in P4::TypeInference)P4::TypeInferenceprotected
onlyBitsOrBitStructs(const IR::Type *type) const (defined in P4::TypeInference)P4::TypeInferenceprotected
postorder(IR::Declaration_MatchKind *decl) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Declaration_Variable *decl) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Declaration_Constant *constant) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4Control *cont) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4Parser *cont) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Method *method) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Type *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Table *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Error *decl) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_InfInt *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Method *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Action *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Name *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Base *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Var *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Enum *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Extern *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::StructField *field) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Header *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Stack *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Struct *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_HeaderUnion *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Typedef *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Specialized *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_SpecializedCanonical *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Tuple *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_P4List *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_List *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Set *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_ArchBlock *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Newtype *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_Package *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Type_ActionEnum *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4Table *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4Action *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4ValueSet *type) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Key *key) overrideP4::TypeInference
postorder(IR::Entry *e) overrideP4::TypeInference
postorder(IR::Dots *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Argument *arg) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::SerEnumMember *member) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Parameter *param) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Constant *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::BoolLiteral *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::StringLiteral *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Operation_Relation *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Concat *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ArrayIndex *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::LAnd *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::LOr *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Add *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Sub *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::AddSat *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::SubSat *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Mul *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Div *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Mod *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Shl *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Shr *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::BXor *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::BAnd *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::BOr *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Mask *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::Range *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
postorder(IR::LNot *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Neg *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::UPlus *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Cmpl *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Cast *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Mux *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Slice *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::PathExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Member *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::TypeNameExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ListExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::InvalidHeader *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::InvalidHeaderUnion *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Invalid *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::P4ListExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::StructExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::HeaderStackExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::MethodCallExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ConstructorCallExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::SelectExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::DefaultExpression *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::This *expression) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::AttribLocal *local) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ActionList *al) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ReturnStatement *stat) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::IfStatement *stat) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::SwitchStatement *stat) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::AssignmentStatement *stat) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::ActionListElement *elem) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::KeyElement *elem) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Property *elem) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::SelectCase *elem) override (defined in P4::TypeInference)P4::TypeInference
postorder(IR::Annotation *annotation) override (defined in P4::TypeInference)P4::TypeInference
preorder(IR::Expression *expression) override (defined in P4::TypeInference)P4::TypeInferenceinline
preorder(IR::Type *type) override (defined in P4::TypeInference)P4::TypeInferenceinline
preorder(IR::Function *function) override (defined in P4::TypeInference)P4::TypeInference
preorder(IR::P4Program *program) override (defined in P4::TypeInference)P4::TypeInference
preorder(IR::Declaration_Instance *decl) override (defined in P4::TypeInference)P4::TypeInference
preorder(IR::EntriesList *el) overrideP4::TypeInference
preorder(IR::Type_SerEnum *type) override (defined in P4::TypeInference)P4::TypeInference
pruneIfDone(const IR::Node *node) (defined in P4::TypeInference)P4::TypeInferenceinline
readOnly (defined in P4::TypeInference)P4::TypeInferenceprotected
setCompileTimeConstant(const IR::Expression *expression) (defined in P4::TypeInference)P4::TypeInferenceinlineprotected
setLeftValue(const IR::Expression *expression) (defined in P4::TypeInference)P4::TypeInferenceinlineprotected
setType(const IR::Node *element, const IR::Type *type) (defined in P4::TypeInference)P4::TypeInferenceprotected
setTypeType(const IR::Type *type, bool learn=true) (defined in P4::TypeInference)P4::TypeInferenceprotectedvirtual
shift(const IR::Operation_Binary *op) (defined in P4::TypeInference)P4::TypeInferenceprotected
specialize(const IR::IMayBeGenericType *type, const IR::Vector< IR::Type > *arguments)P4::TypeInferencestatic
TypeInference(ReferenceMap *refMap, TypeMap *typeMap, bool readOnly=false, bool checkArrays=true) (defined in P4::TypeInference)P4::TypeInference
typeSet(const IR::Operation_Binary *op) (defined in P4::TypeInference)P4::TypeInferenceprotected
unify(const IR::Node *errorPosition, const IR::Type *destType, const IR::Type *srcType, cstring errorFormat=nullptr, std::initializer_list< const IR::Node * > errorArgs={})P4::TypeInferenceinlineprotected
unifyBase(bool allowCasts, const IR::Node *errorPosition, const IR::Type *destType, const IR::Type *srcType, cstring errorFormat, std::initializer_list< const IR::Node * > errorArgs) (defined in P4::TypeInference)P4::TypeInferenceprotected
unifyCast(const IR::Node *errorPosition, const IR::Type *destType, const IR::Type *srcType, cstring errorFormat=nullptr, std::initializer_list< const IR::Node * > errorArgs={})P4::TypeInferenceinlineprotected
unsBinaryArith(const IR::Operation_Binary *op) (defined in P4::TypeInference)P4::TypeInferenceprotected
validateActionInitializer(const IR::Expression *actionCall)P4::TypeInferenceprotected
validateFields(const IR::Type *type, std::function< bool(const IR::Type *)> checker) constP4::TypeInferenceprotected