P4C
The P4 Compiler
Loading...
Searching...
No Matches
Class Hierarchy

Go to the graphical class hierarchy

This inheritance list is sorted roughly, but not completely, alphabetically:
[detail level 123456789]
 CActionAnalysis::ActionDataInfo
 CActionAnalysis::ActionParam
 CActionAnalysis::Alignment
 CActionAnalysis::ConstantInfo
 CActionAnalysis::ConstantPosition
 CActionAnalysis::ContainerAction
 CActionAnalysis::FieldAction
 CActionAnalysis::TotalAlignment
 CActionData::ALUOperation
 CActionData::ALUParameter
 CActionData::ALUPosition
 CActionData::Format
 CActionData::Format::Use
 CActionData::FormatType_t
 CActionData::LocalPacking
 CActionData::PackingConstraint
 CActionData::RamSection
 CActionData::RamSectionPosition
 CActionData::RotationInfo
 CActionData::SharedParameter
 CActionData::SingleActionAllocation
 CActionData::SingleActionPositions
 CActionData::UniqueLocationKey
 CActionDataBus
 CActionDataBus::FullShare
 CActionDataBus::Use
 CActionDataBus::Use::ReservedSpace
 CActionPhvConstraintCanPack
 CActionPhvConstraintLogging
 CActionPhvConstraints::ActionSources
 CAllConstraints
 Calloc_trace_cb_t
 CAllocAlignmentAllocAlignment has two maps used by tryAllocSliceList
 CAllocateParserState::ParserStateAllocator
 CAllocateParserState::ParserStateSplitter
 CAllocationStrategy
 CAllocInfo
 CAllocResult
 CAllocScore
 CArchSpec
 CAssign
 Cassoc::detail::_void< Ts >
 Cattached_entries_element_t
 CAutoIndent
 CBase
 CBFN::ActionProfile
 CBFN::ActionSelector
 CBFN::Alloc1Dbase< T >
 CBFN::Alloc1Dbase< P4::cstring >
 CBFN::Alloc1Dbase< std::pair< P4::cstring, int > >
 CBFN::Alloc1Dbase< std::pair< PHV::Container, int > >
 CBFN::Alloc2Dbase< T >
 CBFN::Alloc2Dbase< P4::bitvec >
 CBFN::Alloc2Dbase< P4::cstring >
 CBFN::Alloc2Dbase< result_bus_info >
 CBFN::Alloc2Dbase< search_bus_info >
 CBFN::Alloc2Dbase< std::pair< PHV::Container, int > >
 CBFN::Alloc3Dbase< T >
 CBFN::AncestorStates
 CBFN::AssignOr
 CBFN::BFRT::BFRuntimeGenerator
 CBFN::BFRT::BFRuntimeGenerator::ActionProf
 CBFN::BFRT::BFRuntimeGenerator::CounterCommon counter representation between PSA and other architectures
 CBFN::BFRT::BFRuntimeGenerator::DigestCommon digest representation between PSA and other architectures
 CBFN::BFRT::BFRuntimeGenerator::MeterCommon meter representation between PSA and other architectures
 CBFN::BFRT::BFRuntimeGenerator::RegisterCommon register representation between PSA and other architectures
 CBFN::BFRT::BFRuntimeSchemaGenerator::ActionSelector
 CBFN::BFRT::BFRuntimeSchemaGenerator::DynHash
 CBFN::BFRT::BFRuntimeSchemaGenerator::DynHash::hashField
 CBFN::BFRT::BFRuntimeSchemaGenerator::Lpf
 CBFN::BFRT::BFRuntimeSchemaGenerator::ParserChoices
 CBFN::BFRT::BFRuntimeSchemaGenerator::PortMetadata
 CBFN::BFRT::BFRuntimeSchemaGenerator::RegisterParam
 CBFN::BFRT::BFRuntimeSchemaGenerator::Snapshot
 CBFN::BFRT::BFRuntimeSchemaGenerator::Snapshot::Field
 CBFN::BFRT::BFRuntimeSchemaGenerator::ValueSet
 CBFN::BFRT::BFRuntimeSchemaGenerator::Wred
 CBFN::BFRT::TypeSpecParser
 CBFN::BFRT::TypeSpecParser::Field
 CBFN::BFRuntimeArchHandlerTofino::SnapshotInfo
 CBFN::BlockInfo
 CBFN::BridgedFieldInfo
 CBFN::CollectPipelines::FullGressDescription ingress or egress
 CBFN::CollectPipelines::Pipe
 CBFN::CollectPipelines::Pipelines
 CBFN::CounterExtern< arch >
 CBFN::DebugInfo
 CBFN::DigestThe information about a digest instance which is needed to serialize it
 CBFN::DynHashThe information about a hash instance which is needed to serialize it
 CBFN::DynHash::hashField
 CBFN::FieldPacking
 CBFN::FieldPacking::PackedItem
 CBFN::GetBackendParserConverts frontend parser IR into backend IR
 CBFN::HeaderStackInfoMetadata about how header stacks are used in the program
 CBFN::HeaderStackInfo::Info
 CBFN::KeyIsSimple
 CBFN::LinearPath
 CBFN::LpfThe information about a LPF instance which is needed to serialize it
 CBFN::Match
 CBFN::MetadataFieldA helper struct used to construct the metadata remapping tables
 CBFN::MeterExtern< arch >
 CBFN::P4RuntimeStdConverter
 CBFN::ParserEnforceDepthReq::ParserPadReqPad requirements for a parser instance to enforce min parse depth
 CBFN::ParserLoopsInfo
 CBFN::Pipeline
 CBFN::PortMetadata
 CBFN::Pragma
 CBFN::ProgramPipelines
 CBFN::ProgramStructure
 CBFN::PSA::PacketPathInfo
 CBFN::PSA::PsaBlockInfo
 CBFN::PSA::TableAttributes_Model
 CBFN::RegisterThe information about a register instance which is needed to serialize it
 CBFN::RegisterParamThe information about a register parameter instance which is needed to serialize it
 CBFN::Resources::ActionBusByteResource
 CBFN::Resources::HashBitResource
 CBFN::Resources::HashBitResource::Usage
 CBFN::Resources::HashDistResource
 CBFN::Resources::IMemColorResource
 CBFN::Resources::MemoriesResource
 CBFN::Resources::StageResources
 CBFN::Resources::XbarByteResource
 CBFN::SnapshotFieldIdTable
 CBFN::SnapshotFieldInfo
 CBFN::ValueSetThe information about a value set instance which is needed to serialize it
 CBFN::WredThe information about a Wred instance which is needed to serialize it
 Cbfn_hash_algorithm_
 Cboost::default_bfs_visitor
 Cboost::equality_comparable
 Cbpf_elf_map
 Cbpf_map
 Cbpf_tableA helper structure used to describe attributes
 CBreakSliceListCtx
 CBridgeContext
 CBruteForceOptimizationStrategy
 CBruteForceStrategyConfig
 CByNameLess< T >
 Ccanon_name
 CCanPackErrorV2
 CChecksumInfo
 Cclone_session_entry
 CClotInfo
 Ccode
 CCollectBridgedFieldsUse::Use
 CCollectGatewayFields::info_t
 CCollectSourceInfoLogging::Symbol
 CCompilerOptions
 CComputeDefUse::loc_t
 CConstrainedFieldMapBuilderInitialize map of constrained fields by information present in PhvInfo and their slices based on slicing computed by SuperClusters
 CConstraints::BooleanConstraint
 CConstraints::GroupConstraint
 CConstraints::IntegerConstraint
 CConstraints::PairConstraint
 CConstraintSolverThe class uses the Z3 solver to generate packing for a set of PHV fields given a set of constraints
 CContainerSizeExtractor
 CControlFlowVisitor
 CControlFlowVisitor::SetupJoinPoints
 CCoreAllocation
 Ccrc_alg_info_
 CDarkLiveRange::OrderedFieldInfo
 CDarkLiveRangeMap
 CDecidePlacement::Backfill
 CDecidePlacement::BacktrackManagement
 CDecidePlacement::BacktrackPlacement
 CDecidePlacement::FinalPlacement
 CDecidePlacement::GroupPlace
 CDecidePlacement::PlacementScore
 CDecidePlacement::ResourceBasedAlloc
 CDecidePlacement::save_placement_t
 CDeparseGraph
 CDeparseGraph::NodeInfo
 CDeparserAsmOutput
 CDependencyGraph
 CDependencyGraph::StageInfo
 Cdetail::CondIterableAssoc< std::map< const FieldGroup *, std::vector< const IR::Expression * >, std::less< const FieldGroup * >, std::allocator< std::pair< const const FieldGroup *, std::vector< const IR::Expression * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const FieldGroup *, std::vector< const IR::TempVar * >, std::less< const FieldGroup * >, std::allocator< std::pair< const const FieldGroup *, std::vector< const IR::TempVar * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::BFN::LoweredParserState *, assoc::map< const IR::BFN::LoweredParserState *, const std::set< int > * >, std::less< const IR::BFN::LoweredParserState * >, std::allocator< std::pair< const const IR::BFN::LoweredParserState *, assoc::map< const IR::BFN::LoweredParserState *, const std::set< int > * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::BFN::LoweredParserState *, const IR::BFN::LoweredParser *, std::less< const IR::BFN::LoweredParserState * >, std::allocator< std::pair< const const IR::BFN::LoweredParserState *, const IR::BFN::LoweredParser * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::BFN::LoweredParserState *, const IR::BFN::LoweredParserState *, std::less< const IR::BFN::LoweredParserState * >, std::allocator< std::pair< const const IR::BFN::LoweredParserState *, const IR::BFN::LoweredParserState * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::BFN::ParserState *, assoc::map< const IR::BFN::ParserState *, const std::set< int > * >, std::less< const IR::BFN::ParserState * >, std::allocator< std::pair< const const IR::BFN::ParserState *, assoc::map< const IR::BFN::ParserState *, const std::set< int > * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::BFN::ParserState *, const Parser *, std::less< const IR::BFN::ParserState * >, std::allocator< std::pair< const const IR::BFN::ParserState *, const Parser * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::Declaration_Instance *, const IR::MAU::AttachedMemory *, std::less< const IR::Declaration_Instance * >, std::allocator< std::pair< const const IR::Declaration_Instance *, const IR::MAU::AttachedMemory * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::Declaration_Instance *, const IR::MAU::Selector *, std::less< const IR::Declaration_Instance * >, std::allocator< std::pair< const const IR::Declaration_Instance *, const IR::MAU::Selector * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::Declaration_Instance *, IR::MAU::StatefulAlu *, std::less< const IR::Declaration_Instance * >, std::allocator< std::pair< const const IR::Declaration_Instance *, IR::MAU::StatefulAlu * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::Expression *, const IR::ParserState *, std::less< const IR::Expression * >, std::allocator< std::pair< const const IR::Expression *, const IR::ParserState * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::Expression *, P4::ordered_set< const IR::Expression * >, std::less< const IR::Expression * >, std::allocator< std::pair< const const IR::Expression *, P4::ordered_set< const IR::Expression * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::FieldList *, P4::cstring, std::less< const IR::FieldList * >, std::allocator< std::pair< const const IR::FieldList *, P4::cstring > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::MAU::Action *, const IR::MAU::Action *, std::less< const IR::MAU::Action * >, std::allocator< std::pair< const const IR::MAU::Action *, const IR::MAU::Action * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::MAU::Action *, const IR::MAU::Instruction *, std::less< const IR::MAU::Action * >, std::allocator< std::pair< const const IR::MAU::Action *, const IR::MAU::Instruction * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::MAU::StatefulAlu *, CreateSaluInstruction *, std::less< const IR::MAU::StatefulAlu * >, std::allocator< std::pair< const const IR::MAU::StatefulAlu *, CreateSaluInstruction * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::MethodCallStatement *, const IR::Declaration *, std::less< const IR::MethodCallStatement * >, std::allocator< std::pair< const const IR::MethodCallStatement *, const IR::Declaration * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::MethodCallStatement *, IR::Declaration_Instance *, std::less< const IR::MethodCallStatement * >, std::allocator< std::pair< const const IR::MethodCallStatement *, IR::Declaration_Instance * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const IR::ParserState *, std::vector< const IR::Expression * >, std::less< const IR::ParserState * >, std::allocator< std::pair< const const IR::ParserState *, std::vector< const IR::Expression * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const P4::IR::Node *, IR::MAU::Table *, std::less< const P4::IR::Node * >, std::allocator< std::pair< const const P4::IR::Node *, IR::MAU::Table * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const P4::IR::Node *, IR::MAU::TableSeq *, std::less< const P4::IR::Node * >, std::allocator< std::pair< const const P4::IR::Node *, IR::MAU::TableSeq * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const PHV::Field *, const IR::Expression *, std::less< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, const IR::Expression * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const PHV::Field *, P4::ordered_set< const IR::BFN::ParserState * >, std::less< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, P4::ordered_set< const IR::BFN::ParserState * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const PHV::Field *, P4::ordered_set< const IR::MAU::Action * >, std::less< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, P4::ordered_set< const IR::MAU::Action * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const State *, assoc::map< const State *, bool >, std::less< const State * >, std::allocator< std::pair< const const State *, assoc::map< const State *, bool > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const State *, assoc::map< const State *, const std::set< int > * >, std::less< const State * >, std::allocator< std::pair< const const State *, assoc::map< const State *, const std::set< int > * > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const State *, const Parser *, std::less< const State * >, std::allocator< std::pair< const const State *, const Parser * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< const State *, int, std::less< const State * >, std::allocator< std::pair< const const State *, int > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< gress_t, const IR::BFN::P4Thread *, std::less< gress_t >, std::allocator< std::pair< const gress_t, const IR::BFN::P4Thread * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< gress_t, FindParsingFrontier::Frontier, std::less< gress_t >, std::allocator< std::pair< const gress_t, FindParsingFrontier::Frontier > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< gress_t, StateSet, std::less< gress_t >, std::allocator< std::pair< const gress_t, StateSet > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< gress_t, std::set< P4::cstring >, std::less< gress_t >, std::allocator< std::pair< const gress_t, std::set< P4::cstring > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< int, const State *, std::less< int >, std::allocator< std::pair< const int, const State * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< Key, T, std::less< Key >, std::allocator< std::pair< const Key, T > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< P4::cstring, const IR::BFN::HdrLenIncStop *, std::less< P4::cstring >, std::allocator< std::pair< const P4::cstring, const IR::BFN::HdrLenIncStop * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< P4::cstring, const IR::BFN::ParserState *, std::less< P4::cstring >, std::allocator< std::pair< const P4::cstring, const IR::BFN::ParserState * > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< P4::cstring, IR::Vector< IR::BFN::ParserPrimitive >, std::less< P4::cstring >, std::allocator< std::pair< const P4::cstring, IR::Vector< IR::BFN::ParserPrimitive > > > >, Iterable::Auto >
 Cdetail::CondIterableAssoc< std::map< P4::cstring, P4::safe_vector< const IR::MAU::BackendAttached * >, std::less< P4::cstring >, std::allocator< std::pair< const P4::cstring, P4::safe_vector< const IR::MAU::BackendAttached * > > > >, Iterable::Auto >
 CDevice
 CDevice::GatewaySpec
 CDevice::StatefulAluSpec
 CDirectedGraph
 CDotDumper
 Cdp_packet
 CDumpSeqTables
 CDynamicDependencyMetrics
 CE
 Cemit_vector_formatter< VEC >
 CErrorReporter
 CEventLogger
 CFieldAlignment
 CFieldExtractInfoSummarizes parser extracts for all fields
 CFieldPackingOpportunity
 CFieldSliceExtractInfoHolds information relating to a field slice's extract
 CFindDataDependencyGraph::access_t
 CFindParsingFrontier::CutSet
 CFindParsingFrontier::Frontier
 CFindPayloadCandidates
 CFlowGraph
 CFlowGraph::DumpTableDetails
 Cfmt_state
 CFormatHash
 Cgalois_field_matrix_delta_
 CGenerateVLIWInstructions
 Cgraphs::ParserGraphs
 CGroupConstraintExtractorBlueprint for group constraint extractor classes
 CHasFullMatchCoverage
 Chash_calc_output_
 Chash_calc_rotate_info
 Chash_column_
 Chash_regs_
 Chash_seed_
 Chash_seed_delta_
 Chash_symmetric_info_Contains Symmetric hashing info for a hash input
 CHashFuncLoc
 CHashMaskAnnotationsHelper class to handle the @hash_mask() annotation
 CHeaderInfoData structure containing information about which headers are present in the parser and MAU, as well as additional properties for each header and mutual exclusivity information. The passes in HeaderMutex fill this data structure in a specific order, thus the order of these passes matter (e.g. FindConstEntryTable needs to run after passes which fill all_headers, mau_headers, and parser_headers)
 CIMemSpec
 CInferWriteMode::CounterExample
 CInspector
 CInstructionMemory
 CInstructionMemory::Use
 CInstructionMemory::Use::VLIW_Instruction
 CIntrinsicField
 CIntrinsicParam
 CIR::Expression
 CIXBar::FieldInfo
 CIXBar::KeyInfo
 CIXBar::Loc
 CIXBar::Use
 CIXBar::Use::Byte
 CIXBar::Use::TotalInfo
 CIXBar::Use::Way
 Cixbar_init_
 Cixbar_input_
 Cixbar_input_.u
 CIXBarRandomCompiler generated random number function for use as hash seed on the input crossbar
 CIXBarSpec
 CJbayNextTable::Prop::NTInfo
 CJbayNextTable::TagReduce::merge_t
 CLayoutChoices
 CLayoutOption
 CLiftEqual< T >
 CLiftEqual< Clot >
 CLiftEqual< ConstrainedSlice >
 CLiftEqual< FieldSlice >
 CLiftLess< T >
 CLiftLess< Clot >
 CLiftLess< ClotCandidate >
 CLiftLess< ConstrainedSlice >
 CLiftLess< Field >
 CLiftLess< FieldSlice >
 CLiftLess< Pseudoheader >
 Clogfix
 CLoggableEntityClass with handle for logging constraints
 CLogging::FileLogA FileLog is used to redirect the logging output of a visitor pass to a file
 CLogging::Writer
 CLoweredParserMatchAllocator
 CMatchAction
 CMAU::Inspector
 CMauAsmOutput::NextTableSet
 CMauPower::Edge
 CMauPower::MauFeatures
 CMauPower::MprSettings
 CMauPower::Node
 CMauPower::NodeAndEdgeSet
 CMauPower::PowerMemoryAccess
 CMauPowerSpec
 CMauSpec
 CMemories
 CMemories::Use
 CMemories::Use::Gateway
 CMemories::Use::Row
 CMemories::Use::ScmLoc
 CMemories::Use::Way
 Cmemory_vector
 CMeterALU::Format::Use
 CModifier
 CP4::AbstractParserDriver
 CP4::ActionInvocation
 CP4::ActionReplacement
 CP4::ActionSynthesisPolicy
 CP4::AllocTrace
 CP4::AnnotationSelectionPolicy
 CP4::AutoCompileContext
 CP4::BFRT::BFRuntimeGenerator
 CP4::BFRT::BFRuntimeGenerator::ActionProf
 CP4::BFRT::BFRuntimeGenerator::CounterCommon counter representation between PSA and other architectures
 CP4::BFRT::BFRuntimeGenerator::DigestCommon digest representation between PSA and other architectures
 CP4::BFRT::BFRuntimeGenerator::MeterCommon meter representation between PSA and other architectures
 CP4::BFRT::BFRuntimeGenerator::RegisterCommon register representation between PSA and other architectures
 CP4::BFRT::BFRuntimeSchemaGenerator::ActionSelector
 CP4::BFRT::TypeSpecParser
 CP4::BFRT::TypeSpecParser::Field
 CP4::BitRange::FromTo
 CP4::BitRange::MinToMax
 CP4::BitRange::StartLen
 CP4::BitRange::ZeroToMax
 CP4::bitranges
 CP4::bitvec
 CP4::bitvec::const_bitref
 CP4::bitvec::copy_bitref
 CP4::bitvec::nonconst_bitref
 CP4::BMV2::BackendBackend is a the base class for SimpleSwitchBackend and PortableSwitchBackend
 CP4::BMV2::CFG::EdgeA CFG Edge; can be an in-edge or out-edge
 CP4::BMV2::ConversionContext
 CP4::BMV2::ExternConverter
 CP4::BMV2::Helpers::CounterlikeTraits< Kind >
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::PSA > >CounterlikeTraits<> specialization for CounterExtern for PSA
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::V1MODEL > >CounterlikeTraits<> specialization for CounterExtern for v1model
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::V1MODEL2020 > >
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::PSA > >CounterlikeTraits<> specialization for MeterExtern for PSA
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::V1MODEL > >CounterlikeTraits<> specialization for MeterExtern for v1model
 CP4::BMV2::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::V1MODEL2020 > >
 CP4::BMV2::JsonObjects
 CP4::BMV2::MatchImplementation
 CP4::BMV2::PortableCodeGenerator
 CP4::BMV2::Standard::ActionProfileTraits< arch >
 CP4::BMV2::Standard::ActionProfileTraits< Arch::PSA >
 CP4::BMV2::Standard::ActionProfileTraits< Arch::V1MODEL >
 CP4::BMV2::Standard::ActionSelectorTraits< arch >
 CP4::BMV2::Standard::CounterExtern< arch >
 CP4::BMV2::Standard::MeterExtern< arch >
 CP4::BMV2::Standard::RegisterTraits< arch >Traits for the register extern, must be specialized for v1model and PSA
 CP4::BMV2::Standard::RegisterTraits< Arch::PSA >
 CP4::BMV2::Standard::RegisterTraits< Arch::V1MODEL >
 CP4::BMV2::TableAttributes
 CP4::BMV2::V1ModelProperties
 CP4::CallGraph< T >
 CP4::CallGraph< T >::Loop
 CP4::CallGraph< T >::Loops
 CP4::CallGraph< T >::sccInfo
 CP4::CallGraph< P4::cstring >
 CP4::ChooseEnumRepresentation
 CP4::ChooseErrorRepresentation
 CP4::ClosedRange< Unit, Order >
 CP4::ClosedRange< RangeUnit::Bit, Endian::Little >
 CP4::ClosedRange< RangeUnit::Bit, Endian::Network >
 CP4::CompileContextStack
 CP4::ComplexValues
 CP4::ComputeDefUse::loc_t
 CP4::ConstantFoldingPolicy
 CP4::ControlFlowVisitor::flow_join_info_t
 CP4::ControlFlowVisitor::GuardGlobalRAII class to ensure global key is only used in one place
 CP4::ControlFlowVisitor::SaveGlobalRAII class to save and restore one or more global keys
 CP4::ControlPlaneAPI::ActionRef
 CP4::ControlPlaneAPI::ControllerTypeSee section "User-defined types" in P4RT specification
 CP4::ControlPlaneAPI::DefaultActionThe information about a default action which is needed to serialize it
 CP4::ControlPlaneAPI::FieldIdAllocator< T >
 CP4::ControlPlaneAPI::FlattenHeaderFlattens a header type "locally", without modifying the IR
 CP4::ControlPlaneAPI::Helpers::Counterlike< Kind >
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Kind >A traits class describing the properties of "counterlike" things
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::PNA > >CounterlikeTraits<> specialization for CounterExtern for PNA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::PSA > >CounterlikeTraits<> specialization for CounterExtern for PSA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::V1MODEL > >CounterlikeTraits<> specialization for CounterExtern for v1model
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::CounterExtern< Standard::Arch::V1MODEL2020 > >
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::PNA > >CounterlikeTraits<> specialization for MeterExtern for PNA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::PSA > >CounterlikeTraits<> specialization for MeterExtern for PSA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::V1MODEL > >CounterlikeTraits<> specialization for MeterExtern for v1model
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits< Standard::MeterExtern< Standard::Arch::V1MODEL2020 > >
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits<::BFN::CounterExtern< BFN::Arch::PSA > >CounterlikeTraits specialization for BFN::CounterExtern for PSA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits<::BFN::CounterExtern< BFN::Arch::TNA > >CounterlikeTraits<> specialization for CounterExtern
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits<::BFN::MeterExtern< BFN::Arch::PSA > >CounterlikeTraits specialization for BFN::MeterExtern for PSA
 CP4::ControlPlaneAPI::Helpers::CounterlikeTraits<::BFN::MeterExtern< BFN::Arch::TNA > >CounterlikeTraits<> specialization for MeterExtern
 CP4::ControlPlaneAPI::MatchFieldThe information about a match field which is needed to serialize it
 CP4::ControlPlaneAPI::P4InfoMaps
 CP4::ControlPlaneAPI::P4RuntimeAnalyzer
 CP4::ControlPlaneAPI::P4RuntimeArchHandlerBuilderIface
 CP4::ControlPlaneAPI::P4RuntimeArchHandlerIface
 CP4::ControlPlaneAPI::P4RuntimeEntriesConverter
 CP4::ControlPlaneAPI::P4RuntimeSymbolTableIface
 CP4::ControlPlaneAPI::P4RuntimeSymbolType
 CP4::ControlPlaneAPI::P4SymbolSuffixSet
 CP4::ControlPlaneAPI::Standard::ActionProfile
 CP4::ControlPlaneAPI::Standard::ActionProfileTraits< arch >
 CP4::ControlPlaneAPI::Standard::ActionProfileTraits< Arch::PNA >
 CP4::ControlPlaneAPI::Standard::ActionProfileTraits< Arch::PSA >
 CP4::ControlPlaneAPI::Standard::ActionProfileTraits< Arch::V1MODEL >
 CP4::ControlPlaneAPI::Standard::ActionProfileTraits< Arch::V1MODEL2020 >
 CP4::ControlPlaneAPI::Standard::ActionSelector
 CP4::ControlPlaneAPI::Standard::ActionSelectorTraits< arch >
 CP4::ControlPlaneAPI::Standard::CounterExtern< arch >
 CP4::ControlPlaneAPI::Standard::Digest
 CP4::ControlPlaneAPI::Standard::MeterExtern< arch >
 CP4::ControlPlaneAPI::Standard::Register
 CP4::ControlPlaneAPI::Standard::RegisterTraits< arch >Traits for the register extern, must be specialized for v1model and PSA
 CP4::ControlPlaneAPI::Standard::RegisterTraits< Arch::PNA >
 CP4::ControlPlaneAPI::Standard::RegisterTraits< Arch::PSA >
 CP4::ControlPlaneAPI::Standard::RegisterTraits< Arch::V1MODEL >
 CP4::ControlPlaneAPI::Standard::RegisterTraits< Arch::V1MODEL2020 >
 CP4::ControlPlaneAPI::TranslationAnnotationPayload of @p4runtime_translation annotation
 CP4::Coverage::CoverageOptionsSpecifies general options and which IR nodes to track with this particular visitor
 CP4::Coverage::SourceIdCmpUtility function to compare IR nodes in a set. We use their source info
 CP4::cstring
 CP4::DBPrint::setflags_helper
 CP4::DeclarationLookup
 CP4::detail::DbprintDispatchPtr< T >
 CP4::detail::DbprintDispatchRef< T >
 CP4::DiagnosticCountInfo
 CP4::DiagnosticCountInfoGuard
 CP4::DiagnosticCountInfoState
 CP4::DirectMeterMap
 CP4::DirectMeterMap::DirectMeterInfo
 CP4::DoSingleArgumentSelect::PairA pair of expression representing an expression and a mask
 CP4::DPDK::actionAttributes
 CP4::DPDK::BranchingInstructionGeneration
 CP4::DPDK::ConvertLookahead::ReplacementMap
 CP4::DPDK::DeclarationInjector
 CP4::DPDK::DpdkBackend
 CP4::DPDK::externAttributes
 CP4::DPDK::fieldInfo
 CP4::DPDK::keyElementInfo
 CP4::DPDK::keyInfo
 CP4::DPDK::SelectionTableSelection table attributes
 CP4::DPDK::SwitchHandler
 CP4::DPDK::TableAttributes
 CP4::DPDK::TdiBfrtConf
 CP4::DPDK::TopLevelCtxtProgram level information for context json
 CP4::DpdkProgramStructureCollect information related to P4 programs targeting dpdk
 CP4::Dump
 CP4::EBPF::EbpfCodeGenerator
 CP4::EBPF::EBPFHashAlgorithmTypeFactoryPSA
 CP4::EBPF::EBPFInitializerUtils
 CP4::EBPF::EBPFTypeFactory
 CP4::EBPF::MidEnd
 CP4::EBPF::PSASwitchBackend
 CP4::EBPF::Target
 CP4::EnumRepresentation
 CP4::ErrorCatalog
 CP4::ErrorMessage
 CP4::ErrorReporter
 CP4::ErrorType
 CP4::ExternInstance
 CP4::flat_map< K, V, Compare, Container >
 CP4::flat_map< K, V, Compare, Container >::value_compare
 CP4::flat_map< P4::cstring, const P4::StorageLocation *, std::less<>, absl::InlinedVector< std::pair< P4::cstring, const P4::StorageLocation * >, 4 > >
 CP4::FrontEnd
 CP4::FunctionSpecializationDescribes how a generic function is specialized
 CP4::FunctionSpecializationMap
 CP4::GlobalActionReplacements
 CP4::graphs::ControlGraphs::ControlStack
 CP4::graphs::EdgeTypeIface
 CP4::graphs::Graphs::GraphAttributeSetter
 CP4::graphs::Graphs::Vertex
 CP4::graphs::ParserGraphs::TransitionEdge
 CP4::HalfOpenRange< Unit, Order >
 CP4::hash_vector_base
 CP4::hash_vector_base::internal
 CP4::hash_vector_base::lookup_cache
 CP4::hdrFieldInfo
 CP4::hex
 CP4::hexvec
 CP4::ICompileContext
 CP4::IHasBlock
 CP4::IHasDbPrint
 CP4::indent_t
 CP4::IndentCtl::TempIndent
 CP4::InlineList
 CP4::InlineSummary::PerCallerVarious substitutions that must be applied for each instance
 CP4::InlineSummary::PerCaller::key_equal
 CP4::InlineSummary::PerCaller::key_hash
 CP4::IOptionPragmaParser
 CP4::IR::MAU::HashFunction
 CP4::IR::MAU::Table::payload_info_t
 CP4::IR::MAU::Table::payload_info_t::info_t
 CP4::IR::StateVariableEqualEquals for StateVariable pointers. We only compare the label
 CP4::IR::StateVariableLessLess for StateVariable pointers. We only compare the label
 CP4::IR::SymbolicVariableEqualEquals for SymbolicVariable pointers. We only compare the label
 CP4::IR::SymbolicVariableLessLess for SymbolicVariable pointers. We only compare the label
 CP4::IR::Traversal::Assign< T >A selector used at the end of selector chain to assign to the current sub-object. e.g. modify(obj, &IR::AssignmentStatement::left, Assign(var)) will set the LHS of assignment
 CP4::IR::Traversal::Detail::TraverseInternal, don't use directly. The class exists so that the functions can be mutually recursive
 CP4::IR::Traversal::IndexSelect an index of a integer-indexed sub-object. This is useful e.g. to select first parameter of a method call and in similar cases involving IR::Vector or IR::IndexedVector
 CP4::IterKeys< PairIter >
 CP4::IterValues< PairIter >
 CP4::JSONGenerator
 CP4::JSONLoader
 CP4::KeyIsSimple
 CP4::loc_t
 CP4::Log::Detail::LevelAndOutput
 CP4::Log::Detail::OutputLogPrefix
 CP4::LogAbbrev
 CP4::MapForKey< M >
 CP4::MarshaledFrom
 CP4::match_t
 CP4::MatchRegister
 CP4::Model::Elem
 CP4::Model::Model
 CP4::n4
 CP4::NameGenerator
 CP4::NestedStructMap
 CP4::NetHash::IdentityA class with the same signature as reflect, but just returning the data
 CP4::NetHash::Reflect
 CP4::ordered_map< K, V, COMP, ALLOC >
 CP4::ordered_map< K, V, COMP, ALLOC >::value_compare
 CP4::ordered_map< Clot *, std::vector< const IR::BFN::ExtractClot * > >
 CP4::ordered_map< const CollectGatewayFields::info_t *, P4::cstring >
 CP4::ordered_map< const FieldGroup *, VersionMap >
 CP4::ordered_map< const IR::BFN::LoweredParser *, P4::ordered_set< const IR::BFN::LoweredParserState * > >
 CP4::ordered_map< const IR::BFN::LoweredParser *, ParserGraphImpl * >
 CP4::ordered_map< const IR::BFN::LoweredParserMatch *, const ExtractorUsage * >
 CP4::ordered_map< const IR::BFN::LoweredParserMatch *, const IR::BFN::LoweredParserState * >
 CP4::ordered_map< const IR::BFN::LoweredParserMatch *, std::set< unsigned > >
 CP4::ordered_map< const IR::BFN::LoweredParserState *, P4::ordered_set< const IR::BFN::LoweredParserMatch * > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_map< const Clot *, P4::ordered_set< const IR::BFN::ParserState * > > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_map< P4::cstring, P4::ordered_set< const IR::BFN::ParserState * > > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_map< P4::cstring, std::vector< const IR::BFN::ParserChecksumPrimitive * > > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_map< P4::cstring, unsigned > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_map< unsigned, P4::ordered_set< P4::cstring > > >
 CP4::ordered_map< const IR::BFN::Parser *, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< const IR::BFN::Parser *, StateSet >
 CP4::ordered_map< const IR::BFN::ParserChecksumPrimitive *, const IR::BFN::ParserState * >
 CP4::ordered_map< const IR::BFN::ParserPrimitive *, const IR::BFN::ParserState * >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_map< const Clot *, std::vector< const IR::BFN::ParserChecksumPrimitive * > > >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_map< const PHV::Field *, std::set< unsigned > > >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_set< const IR::BFN::ParserPrimitive * > >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_set< const IR::BFN::ParserState * > >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_set< const PHV::Field * > >
 CP4::ordered_map< const IR::BFN::ParserState *, P4::ordered_set< PHV::Field * > >
 CP4::ordered_map< const IR::BFN::ParserState *, StateSet >
 CP4::ordered_map< const IR::BFN::ParserState *, std::map< unsigned, P4::ordered_set< const PHV::Field * > > >
 CP4::ordered_map< const IR::BFN::ParserState *, std::set< PHV::Container > >
 CP4::ordered_map< const IR::BFN::ParserState *, std::vector< const IR::BFN::ParserChecksumPrimitive * > >
 CP4::ordered_map< const IR::BFN::ParserState *, std::vector< const IR::HeaderStack * > >
 CP4::ordered_map< const IR::BFN::ParserState *, std::vector< const PHV::Field * > >
 CP4::ordered_map< const IR::BFN::ParserState *, typename Graph::vertex_descriptor >
 CP4::ordered_map< const IR::BFN::ParserState *, unsigned >
 CP4::ordered_map< const IR::Constant *, std::vector< uint8_t > >
 CP4::ordered_map< const IR::ConstructorCallExpression *, P4::cstring >
 CP4::ordered_map< const IR::Declaration *, ordered_set< cstring > >
 CP4::ordered_map< const IR::Declaration *, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< const IR::Declaration_Instance *, IR::MAU::StatefulAlu * >
 CP4::ordered_map< const IR::Declaration_Instance *, P4::CallInfo * >
 CP4::ordered_map< const IR::Declaration_Variable *, const P4::cstring >
 CP4::ordered_map< const IR::Expression *, IR::MAU::HashGenExpression * >
 CP4::ordered_map< const IR::Expression *, IR::Member * >
 CP4::ordered_map< const IR::Expression *, std::map< gress_t, const IR::ParserState * > >
 CP4::ordered_map< const IR::ITypeVar *, const IR::Type * >
 CP4::ordered_map< const IR::MAU::Action *, bool >
 CP4::ordered_map< const IR::MAU::Action *, const IR::MAU::Table * >
 CP4::ordered_map< const IR::MAU::Action *, const IR::TempVar * >
 CP4::ordered_map< const IR::MAU::Action *, ordered_set< const PHV::Field * > >
 CP4::ordered_map< const IR::MAU::Action *, P4::bitvec >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_map >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_map< const IR::MAU::AttachedMemory *, use_t > >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_set< const PHV::Field * > >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_set< OperandInfo > >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< const IR::MAU::Action *, P4::ordered_set< PHV::FieldSlice > >
 CP4::ordered_map< const IR::MAU::Action *, P4::UniqueAttachedId >
 CP4::ordered_map< const IR::MAU::Action *, std::vector< const CoPackHint * > >
 CP4::ordered_map< const IR::MAU::Action *, std::vector< PHV::AllocSlice > >
 CP4::ordered_map< const IR::MAU::Action *, unsigned >
 CP4::ordered_map< const IR::MAU::ActionData *, P4::ordered_map >
 CP4::ordered_map< const IR::MAU::ActionData *, std::set< P4::cstring > >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, attached_entries_element_t >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, clear_info_t >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, const ActionDataBus::Use & >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, const IXBar::Use & >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, P4::safe_vector< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, table_alloc * >
 CP4::ordered_map< const IR::MAU::AttachedMemory *, unsigned >
 CP4::ordered_map< const IR::MAU::BackendAttached *, AttachedActionCoord >
 CP4::ordered_map< const IR::MAU::Instruction *, const IR::MAU::Action * >
 CP4::ordered_map< const IR::MAU::Instruction *, const IR::TempVar * >
 CP4::ordered_map< const IR::MAU::Meter *, const IR::Expression * >
 CP4::ordered_map< const IR::MAU::Meter *, P4::bitvec >
 CP4::ordered_map< const IR::MAU::Selector *, const IR::MAU::StatefulAlu * >
 CP4::ordered_map< const IR::MAU::Selector *, const IR::MAU::Table * >
 CP4::ordered_map< const IR::MAU::Selector *, P4HashFunction * >
 CP4::ordered_map< const IR::MAU::Table *, AttachedInfo >
 CP4::ordered_map< const IR::MAU::Table *, clear_info_t * >
 CP4::ordered_map< const IR::MAU::Table *, const IR::MAU::Selector * >
 CP4::ordered_map< const IR::MAU::Table *, const P4::safe_vector< Tofino::IXBar::HashDistUse > * >
 CP4::ordered_map< const IR::MAU::Table *, DecidePlacement::BacktrackPlacement * >
 CP4::ordered_map< const IR::MAU::Table *, DependencyGraph::StageInfo >
 CP4::ordered_map< const IR::MAU::Table *, info_t >
 CP4::ordered_map< const IR::MAU::Table *, int >
 CP4::ordered_map< const IR::MAU::Table *, OperationsPerAction >
 CP4::ordered_map< const IR::MAU::Table *, ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::MAU::Table *, ordered_set< const IR::MAU::TableSeq * > >
 CP4::ordered_map< const IR::MAU::Table *, ordered_set< ContainerByte > >
 CP4::ordered_map< const IR::MAU::Table *, P4::bitvec >
 CP4::ordered_map< const IR::MAU::Table *, P4::ordered_map< const IR::MAU::Table *, dependencies_t > >
 CP4::ordered_map< const IR::MAU::Table *, P4::ordered_map< P4::cstring, std::vector< std::pair< P4::cstring, HeaderState > > > >
 CP4::ordered_map< const IR::MAU::Table *, P4::ordered_set< const IR::MAU::Action * > >
 CP4::ordered_map< const IR::MAU::Table *, P4::ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::MAU::Table *, P4::ordered_set< const PHV::Field * > >
 CP4::ordered_map< const IR::MAU::Table *, PHV::ActionSet >
 CP4::ordered_map< const IR::MAU::Table *, PHV::CollectTableKeys::TableProp >
 CP4::ordered_map< const IR::MAU::Table *, safe_vector< Path > >
 CP4::ordered_map< const IR::MAU::Table *, std::pair< int, int > >
 CP4::ordered_map< const IR::MAU::Table *, std::set< P4::cstring > >
 CP4::ordered_map< const IR::MAU::Table *, std::set< PHV::FieldSlice > >
 CP4::ordered_map< const IR::MAU::Table *, std::vector< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::MAU::Table *, typename Graph::vertex_descriptor >
 CP4::ordered_map< const IR::MAU::TableSeq *, const IR::MAU::Table * >
 CP4::ordered_map< const IR::MAU::TableSeq *, safe_vector< safe_vector< const IR::MAU::Table * > > >
 CP4::ordered_map< const IR::Member *, const IR::Member * >
 CP4::ordered_map< const IR::Member *, gress_t >
 CP4::ordered_map< const IR::MethodCallExpression *, P4::FunctionSpecialization * >
 CP4::ordered_map< const IR::MethodCallStatement *, std::vector< gress_t > >
 CP4::ordered_map< const IR::Node *, const IR::CompileTimeValue * >
 CP4::ordered_map< const IR::Node *, cstring >
 CP4::ordered_map< const IR::P4Action *, const IR::P4Action * >
 CP4::ordered_map< const IR::P4Action *, const IR::P4Control * >
 CP4::ordered_map< const IR::P4Action *, unsigned >
 CP4::ordered_map< const IR::P4Control *, P4::cstring >
 CP4::ordered_map< const IR::P4Parser *, P4::cstring >
 CP4::ordered_map< const IR::P4Table *, const IR::MAU::Table * >
 CP4::ordered_map< const IR::P4Table *, P4::ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< const IR::Parameter *, unsigned >
 CP4::ordered_map< const IR::Statement *, std::vector< const IR::Expression * > >
 CP4::ordered_map< const IR::StatOrDecl *, std::vector< const P4::IR::Node * > >
 CP4::ordered_map< const IR::Type *, const IR::Type_Struct * >
 CP4::ordered_map< const IR::Type *, P4::StructTypeReplacement< IR::Type_Struct > * >
 CP4::ordered_map< const IR::Type_Enum *, P4::EnumRepresentation * >
 CP4::ordered_map< const IR::Type_Enum *, return_enum_info_t >
 CP4::ordered_map< const IR::Type_Specialized *, P4::TypeSpecialization * >
 CP4::ordered_map< const P4::IR::IDeclaration *, unsigned int >
 CP4::ordered_map< const P4::IR::Node *, block_t >
 CP4::ordered_map< const P4::IR::Node *, const IR::P4Action * >
 CP4::ordered_map< const P4::IR::Node *, const P4::IR::Node * >
 CP4::ordered_map< const P4::IR::Node *, P4::SpecializationInfo * >
 CP4::ordered_map< const P4::IR::Node *, pna_block_t >
 CP4::ordered_map< const P4::IR::Node *, std::pair< psa_gress_t, block_t > >
 CP4::ordered_map< const P4::UniqueId, unsigned >
 CP4::ordered_map< const Parser *, ParserGraphImpl * >
 CP4::ordered_map< const Parser::Use *, std::vector< const Parser::Def * > >
 CP4::ordered_map< const PHV::AlignedCluster *, int >
 CP4::ordered_map< const PHV::DarkInitEntry, IR::MAU::Table * >
 CP4::ordered_map< const PHV::Field *, bool >
 CP4::ordered_map< const PHV::Field *, const IR::TempVar * >
 CP4::ordered_map< const PHV::Field *, const PHV::Field * >
 CP4::ordered_map< const PHV::Field *, const PHV::FieldSlice * >
 CP4::ordered_map< const PHV::Field *, FieldSliceExtractInfo * >
 CP4::ordered_map< const PHV::Field *, int >
 CP4::ordered_map< const PHV::Field *, ordered_set< const PHV::Field * > >
 CP4::ordered_map< const PHV::Field *, P4::ClosedRange >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< const IR::MAU::Action *, P4::ordered_map< P4::ClosedRange, P4::ordered_set< PHV::FieldSlice > > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< const IR::MAU::Action *, P4::ordered_map< P4::ClosedRange, std::vector< OperandInfo > > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::BFN::ParserState * > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::MAU::Action * > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< int, unsigned > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, const Clot * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, int > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, P4::ordered_map > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, P4::ordered_map< const IR::MAU::Action *, P4::ordered_set< std::pair< int, int > > > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, P4::ordered_set< const IR::MAU::Action * > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< P4::ClosedRange, P4::ordered_set< std::pair< const IR::MAU::Table *, const IR::MAU::TableKey * > > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< PHV::FieldSlice, PHV::LiveRangeInfo > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< Value, const IR::TempVar * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_map< Value, P4::ordered_set< AssignChain > > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const Assign * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::BFN::ParserPrimitive * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::BFN::ParserState * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::MAU::Action * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const IR::MAU::Instruction * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< const PHV::Field * > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< Constraints::AlignmentConstraint > >
 CP4::ordered_map< const PHV::Field *, P4::ordered_set< PHV::FieldSlice > >
 CP4::ordered_map< const PHV::Field *, P4::safe_vector< FieldImpact > >
 CP4::ordered_map< const PHV::Field *, P4::safe_vector< P4::ClosedRange > >
 CP4::ordered_map< const PHV::Field *, PHV::Kind >
 CP4::ordered_map< const PHV::Field *, PHV::LiveRange >
 CP4::ordered_map< const PHV::Field *, safe_vector< le_bitrange > >
 CP4::ordered_map< const PHV::Field *, std::list< PHV::FieldSlice > >
 CP4::ordered_map< const PHV::Field *, std::map< int, PHV::FieldUse > >
 CP4::ordered_map< const PHV::Field *, std::map< P4::ClosedRange, const IR::Expression * > >
 CP4::ordered_map< const PHV::Field *, std::optional< FieldAlignment > >
 CP4::ordered_map< const PHV::Field *, std::pair< P4::ClosedRange, int > >
 CP4::ordered_map< const PHV::Field *, std::set< const IR::BFN::ParserState * > >
 CP4::ordered_map< const PHV::Field *, std::unordered_map< const IR::BFN::ParserState *, const IR::BFN::ParserRVal * > >
 CP4::ordered_map< const PHV::Field *, std::vector< const PHV::Field * > >
 CP4::ordered_map< const PHV::Field *, std::vector< int > >
 CP4::ordered_map< const PHV::Field *, std::vector< PHV::AllocSlice > >
 CP4::ordered_map< const PHV::Field *, std::vector< PHV::Size > >
 CP4::ordered_map< const PHV::Field *, unsigned >
 CP4::ordered_map< const PHV::FieldSlice, const PHV::RotationalCluster * >
 CP4::ordered_map< const PHV::FieldSlice, P4::ordered_set< const IR::MAU::Action * > >
 CP4::ordered_map< const PHV::FieldSlice, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< const PHV::FieldSlice, PHV::AlignedCluster * >
 CP4::ordered_map< const PHV::SuperCluster *, P4::ordered_map >
 CP4::ordered_map< const PHV::SuperCluster *, PHV::v2::KindSizeIndexedMap >
 CP4::ordered_map< const State *, ordered_set< const State * > >
 CP4::ordered_map< const State *, P4::ordered_set< const Transition * > >
 CP4::ordered_map< const std::string, PHV::Field * >
 CP4::ordered_map< const std::string, PHV::FieldSlice * >
 CP4::ordered_map< const SuperCluster::SliceList *, int >
 CP4::ordered_map< ContGress, PHV::v2::KindSizeIndexedMap >
 CP4::ordered_map< cstring, AliasDestination >
 CP4::ordered_map< cstring, const IR::Type_Header * >
 CP4::ordered_map< cstring, const TestObject * >
 CP4::ordered_map< cstring, cstring >
 CP4::ordered_map< cstring, FieldUse >
 CP4::ordered_map< cstring, ordered_map< cstring, ordered_set< cstring > > >
 CP4::ordered_map< cstring, ordered_set< cstring > >
 CP4::ordered_map< cstring, std::vector< cstring > >
 CP4::ordered_map< cstring, std::vector< z3::expr > >
 CP4::ordered_map< DependencyGraph::dependencies_t, bool >
 CP4::ordered_map< DependencyGraph::dependencies_t, P4::cstring >
 CP4::ordered_map< FieldRef, BFN::BridgedFieldInfo >
 CP4::ordered_map< gress_t, ConstraintMap >
 CP4::ordered_map< gress_t, FlowGraph >
 CP4::ordered_map< gress_t, P4::ordered_map * >
 CP4::ordered_map< gress_t, P4::ordered_map >
 CP4::ordered_map< gress_t, P4::ordered_map< const IR::BFN::ParserState *, P4::ordered_set< P4::cstring > > >
 CP4::ordered_map< gress_t, P4::ordered_map< const IR::MAU::Table *, std::set< const IR::MAU::Table * > > >
 CP4::ordered_map< gress_t, P4::ordered_map< P4::cstring, std::set< const IR::BFN::ParserState * > > >
 CP4::ordered_map< gress_t, PHV::v2::KindSizeIndexedMap >
 CP4::ordered_map< gress_t, ReversibleParserGraph >
 CP4::ordered_map< HashDistKey, const IR::MAU::HashDist * >
 CP4::ordered_map< int, BFN::Resources::ActionBusByteResource >
 CP4::ordered_map< int, const IR::BFN::Pipe * >
 CP4::ordered_map< int, const IR::Expression * >
 CP4::ordered_map< int, const IR::MAU::Table * >
 CP4::ordered_map< int, int >
 CP4::ordered_map< int, ordered_set< ContainerByte > >
 CP4::ordered_map< int, ordered_set< le_bitrange > >
 CP4::ordered_map< int, P4::cstring >
 CP4::ordered_map< int, P4::ordered_map< P4::cstring, int > >
 CP4::ordered_map< int, P4::ordered_map< unsigned, P4::ordered_set< P4::ClosedRange > > >
 CP4::ordered_map< int, P4::ordered_set >
 CP4::ordered_map< int, P4::ordered_set< CollectBridgedFieldsUse::Use > >
 CP4::ordered_map< int, P4::ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< int, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< int, P4::ordered_set< P4::ordered_set< P4::cstring > > >
 CP4::ordered_map< int, P4::safe_vector< std::pair< int, int > > >
 CP4::ordered_map< int, size_t >
 CP4::ordered_map< int, std::pair< int, int > >
 CP4::ordered_map< int, std::set< BFN::Resources::XbarByteResource > >
 CP4::ordered_map< int, std::vector< BFN::Resources::IMemColorResource > >
 CP4::ordered_map< locpair, bool >
 CP4::ordered_map< locpair, P4::ordered_set >
 CP4::ordered_map< locpair, P4::ordered_set< P4::ClosedRange > >
 CP4::ordered_map< P4::cstring, BFN::HeaderStackInfo::Info >
 CP4::ordered_map< P4::cstring, bool >
 CP4::ordered_map< P4::cstring, const ActionDataBus::Use & >
 CP4::ordered_map< P4::cstring, const IR::Declaration_Instance * >
 CP4::ordered_map< P4::cstring, const IR::Declaration_Variable * >
 CP4::ordered_map< P4::cstring, const IR::DpdkHeaderInstance * >
 CP4::ordered_map< P4::cstring, const IR::MAU::HashDist * >
 CP4::ordered_map< P4::cstring, const IR::MAU::Instruction * >
 CP4::ordered_map< P4::cstring, const IR::MAU::Table * >
 CP4::ordered_map< P4::cstring, const IR::Member * >
 CP4::ordered_map< P4::cstring, const IR::P4Action * >
 CP4::ordered_map< P4::cstring, const IR::P4Control * >
 CP4::ordered_map< P4::cstring, const IR::P4Parser * >
 CP4::ordered_map< P4::cstring, const IR::P4Table * >
 CP4::ordered_map< P4::cstring, const IR::P4ValueSet * >
 CP4::ordered_map< P4::cstring, const IR::ParserState * >
 CP4::ordered_map< P4::cstring, const IR::Type_Declaration * >
 CP4::ordered_map< P4::cstring, const IR::Type_Enum * >
 CP4::ordered_map< P4::cstring, const IR::Type_Error * >
 CP4::ordered_map< P4::cstring, const IR::Type_Header * >
 CP4::ordered_map< P4::cstring, const IR::Type_HeaderUnion * >
 CP4::ordered_map< P4::cstring, const IR::Type_SerEnum * >
 CP4::ordered_map< P4::cstring, const IR::Type_Struct * >
 CP4::ordered_map< P4::cstring, const IR::Type_StructLike * >
 CP4::ordered_map< P4::cstring, enum InternalTableType >
 CP4::ordered_map< P4::cstring, FindDataDependencyGraph::access_t >
 CP4::ordered_map< P4::cstring, int >
 CP4::ordered_map< P4::cstring, IR::BFN::Digest * >
 CP4::ordered_map< P4::cstring, IR::ParameterList * >
 CP4::ordered_map< P4::cstring, P4::bitvec >
 CP4::ordered_map< P4::cstring, P4::ComplexValues::Component * >
 CP4::ordered_map< P4::cstring, P4::cstring >
 CP4::ordered_map< P4::cstring, P4::ordered_map >
 CP4::ordered_map< P4::cstring, P4::ordered_map< const PHV::Field *, const IR::StructField * > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< int, AllocInfo > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< P4::cstring, AddressInfo > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< P4::cstring, bool > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< P4::cstring, const IR::StructField * > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< P4::cstring, P4::ordered_set< const IR::BFN::ParserState * > > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< uint, std::list< std::pair< std::vector< P4::cstring >, MethodImpl > > > >
 CP4::ordered_map< P4::cstring, P4::ordered_map< unsigned, IR::Type_Header * > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< const IR::MAU::Action * > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< const IR::MAU::Primitive * > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< const PHV::Field * > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< int > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< P4::cstring > >
 CP4::ordered_map< P4::cstring, P4::ordered_set< std::vector< const PHV::Field * > > >
 CP4::ordered_map< P4::cstring, P4::StructTypeReplacement< IR::Type_StructLike > * >
 CP4::ordered_map< P4::cstring, PHV::Field * >
 CP4::ordered_map< P4::cstring, PhvInfo::StructInfo >
 CP4::ordered_map< P4::cstring, RotateClassifiedAssigns >
 CP4::ordered_map< P4::cstring, solver::ContainerSpec >
 CP4::ordered_map< P4::cstring, std::pair< P4::cstring, bool > >
 CP4::ordered_map< P4::cstring, std::pair< P4::cstring, P4::cstring > * >
 CP4::ordered_map< P4::cstring, std::pair< P4::cstring, P4::cstring > >
 CP4::ordered_map< P4::cstring, std::set< const IR::MAU::Table * > >
 CP4::ordered_map< P4::cstring, std::set< int > >
 CP4::ordered_map< P4::cstring, std::set< P4::cstring > >
 CP4::ordered_map< P4::cstring, std::vector< const IR::BFN::EmitField * > >
 CP4::ordered_map< P4::cstring, std::vector< const IR::StatOrDecl * > >
 CP4::ordered_map< P4::cstring, std::vector< const P4::IR::Node * > * >
 CP4::ordered_map< P4::cstring, std::vector< P4::cstring > * >
 CP4::ordered_map< P4::cstring, std::vector< P4::cstring > >
 CP4::ordered_map< P4::cstring, std::vector< PHV::Size > >
 CP4::ordered_map< P4::cstring, std::vector< struct P4::hdrFieldInfo > >
 CP4::ordered_map< P4::cstring, struct P4::DPDK::fieldInfo >
 CP4::ordered_map< P4::cstring, struct P4::TC::ConvertToBackendIR::ExternBlock * >
 CP4::ordered_map< P4::UniqueId, P4::ordered_set< P4::UniqueId > >
 CP4::ordered_map< PHV::AllocSlice *, premerge_table_stg_t >
 CP4::ordered_map< PHV::AllocSlice *, std::pair< int, int > >
 CP4::ordered_map< PHV::AllocSlice, P4::ordered_set >
 CP4::ordered_map< PHV::AllocSlice, PHV::LiveRange >
 CP4::ordered_map< PHV::Container, ExtractSequence >
 CP4::ordered_map< PHV::Container, gress_t >
 CP4::ordered_map< PHV::Container, int >
 CP4::ordered_map< PHV::Container, P4::bitvec >
 CP4::ordered_map< PHV::Container, P4::ordered_map >
 CP4::ordered_map< PHV::Container, P4::ordered_set< const IR::BFN::LoweredExtractPhv * > >
 CP4::ordered_map< PHV::Container, P4::ordered_set< const IR::BFN::ParserPrimitive * > >
 CP4::ordered_map< PHV::Container, P4::ordered_set< const IR::BFN::ParserState * > >
 CP4::ordered_map< PHV::Container, P4::ordered_set< PHV::AllocSlice > >
 CP4::ordered_map< PHV::Container, P4::ordered_set< write_op_t > >
 CP4::ordered_map< PHV::Container, P4::safe_vector< ActionAnalysis::Alignment > >
 CP4::ordered_map< PHV::Container, PHV::Allocation::ContainerStatus >
 CP4::ordered_map< PHV::Container, std::optional< gress_t > >
 CP4::ordered_map< PHV::FieldSlice, CollectGatewayFields::info_t >
 CP4::ordered_map< PHV::FieldSlice, const IR::MAU::Instruction * >
 CP4::ordered_map< PHV::FieldSlice, const SuperCluster::SliceList * >
 CP4::ordered_map< PHV::FieldSlice, int >
 CP4::ordered_map< PHV::FieldSlice, P4::ordered_map< PHV::FieldSlice, int > >
 CP4::ordered_map< PHV::FieldSlice, P4::ordered_set >
 CP4::ordered_map< PHV::FieldSlice, std::pair< PHV::FieldSlice, OptFieldSlice > >
 CP4::ordered_map< PHV::Kind, P4::ordered_map< P4::cstring, int > >
 CP4::ordered_map< PHV::SuperCluster *, PHV::v2::KindSizeIndexedMap >
 CP4::ordered_map< PHV::Type, unsigned >
 CP4::ordered_map< RandKey, P4::ordered_set >
 CP4::ordered_map< StatefulCallKey, const IR::Expression * >
 CP4::ordered_map< std::optional< gress_t >, P4::ordered_map< PHV::Type, P4::ordered_map< Allocation::ContainerAllocStatus, int > > >
 CP4::ordered_map< std::pair< const IR::BFN::ParserState *, const IR::HeaderStack * >, std::set< unsigned > >
 CP4::ordered_map< std::pair< const IR::MAU::Table *, const IR::MAU::Table * >, DependencyGraph::dependencies_t >
 CP4::ordered_map< std::pair< const State *, const State * >, P4::ordered_set< const Transition * > >
 CP4::ordered_map< std::pair< const State *, P4::cstring >, P4::ordered_set< const Transition * > >
 CP4::ordered_map< std::pair< int, const IR::MAU::Selector * >, std::pair< P4::UniqueId, const Memories::Use * > >
 CP4::ordered_map< std::pair< int, int >, BFN::Resources::HashBitResource >
 CP4::ordered_map< std::pair< int, int >, BFN::Resources::HashDistResource >
 CP4::ordered_map< std::pair< int, int >, P4::ordered_set< const IR::MAU::Table * > >
 CP4::ordered_map< std::pair< P4::cstring, P4::cstring >, P4::cstring >
 CP4::ordered_map< std::pair< P4::cstring, unsigned >, P4::ordered_map< unsigned, IR::Type_Header * > >
 CP4::ordered_map< std::string, JsonData * >
 CP4::ordered_map< std::string, std::set< std::string > >
 CP4::ordered_map< std::string, unsigned >
 CP4::ordered_map< std::tuple< P4::cstring, int >, P4::cstring >
 CP4::ordered_map< std::variant< IR::ConcolicVariable, const IR::Expression * >, const IR::Expression * >
 CP4::ordered_map< T, const IR::Type * >
 CP4::ordered_map< T, std::vector< T > * >
 CP4::ordered_map< tpair, const PHV::FieldSlice * >
 CP4::ordered_map< typename Graph::edge_descriptor, const PHV::Container >
 CP4::ordered_map< typename Graph::edge_descriptor, const PHV::FieldSlice * >
 CP4::ordered_map< typename Graph::edge_descriptor, const std::vector< const IR::MAU::Action * > >
 CP4::ordered_map< typename Graph::edge_descriptor, P4::ordered_map< const PHV::Field *, std::pair< P4::ordered_set< const IR::MAU::Action * >, P4::ordered_set< const IR::MAU::Action * > > > >
 CP4::ordered_map< typename Graph::edge_descriptor, std::string >
 CP4::ordered_map< typename Graph::vertex_descriptor, const IR::BFN::ParserState * >
 CP4::ordered_map< uint8_t, const IR::TempVar * >
 CP4::ordered_map< unsigned, const IR::MethodCallStatement * >
 CP4::ordered_map< unsigned, const IR::ParserState * >
 CP4::ordered_map< unsigned, const IR::SymbolicVariable * >
 CP4::ordered_map< unsigned, P4::cstring >
 CP4::ordered_map< unsigned, unsigned >
 CP4::ordered_set< T, COMP, ALLOC >
 CP4::ordered_set< CollectBridgedFieldsUse::Use >
 CP4::ordered_set< const Constraints::AlignmentConstraint * >
 CP4::ordered_set< const Constraints::CopackConstraint * >
 CP4::ordered_set< const Constraints::DeparsedToTMConstraint * >
 CP4::ordered_set< const Constraints::MutuallyAlignedConstraint * >
 CP4::ordered_set< const Constraints::NoOverlapConstraint * >
 CP4::ordered_set< const Constraints::NoPackConstraint * >
 CP4::ordered_set< const Constraints::NoSplitConstraint * >
 CP4::ordered_set< const Constraints::SolitaryConstraint * >
 CP4::ordered_set< const DecidePlacement::GroupPlace * >
 CP4::ordered_set< const IR::BFN::ExtractPhv * >
 CP4::ordered_set< const IR::BFN::InputBufferRVal * >
 CP4::ordered_set< const IR::BFN::ParserPrimitive * >
 CP4::ordered_set< const IR::BFN::ParserState * >
 CP4::ordered_set< const IR::BFN::Unit * >
 CP4::ordered_set< const IR::Constant * >
 CP4::ordered_set< const IR::Expression * >
 CP4::ordered_set< const IR::FieldList * >
 CP4::ordered_set< const IR::MAU::Action * >
 CP4::ordered_set< const IR::MAU::ActionData * >
 CP4::ordered_set< const IR::MAU::Instruction * >
 CP4::ordered_set< const IR::MAU::SaluAction * >
 CP4::ordered_set< const IR::MAU::StatefulAlu * >
 CP4::ordered_set< const IR::MAU::Table * >
 CP4::ordered_set< const IR::MAU::TableSeq * >
 CP4::ordered_set< const IR::Member * >
 CP4::ordered_set< const IR::Node * >
 CP4::ordered_set< const IR::Parameter * >
 CP4::ordered_set< const IR::ParserState * >
 CP4::ordered_set< const PHV::Field * >
 CP4::ordered_set< const PHV::RotationalCluster * >
 CP4::ordered_set< const SRAM_group * >
 CP4::ordered_set< const State * >
 CP4::ordered_set< const StorageLocation * >
 CP4::ordered_set< const SuperCluster::SliceList * >
 CP4::ordered_set< DecidePlacement::BacktrackPlacement * >
 CP4::ordered_set< DecidePlacement::PlacementScore * >
 CP4::ordered_set< DependencyGraph::Graph::vertex_descriptor >
 CP4::ordered_set< FieldRef >
 CP4::ordered_set< IndexCheck >
 CP4::ordered_set< int >
 CP4::ordered_set< IR::Declaration_Instance * >
 CP4::ordered_set< LBUse >
 CP4::ordered_set< locpair >
 CP4::ordered_set< P4::BMV2::CFG::Edge * >
 CP4::ordered_set< P4::BMV2::CFG::Node * >
 CP4::ordered_set< P4::cstring >
 CP4::ordered_set< P4::UniqueId >
 CP4::ordered_set< PHV::AlignedCluster * >
 CP4::ordered_set< PHV::AllocSlice >
 CP4::ordered_set< PHV::Container >
 CP4::ordered_set< PHV::Field * >
 CP4::ordered_set< PHV::FieldRange >
 CP4::ordered_set< PHV::FieldSlice >
 CP4::ordered_set< PHV::SuperCluster * >
 CP4::ordered_set< PHV::SuperCluster::SliceList * >
 CP4::ordered_set< SliceList * >
 CP4::ordered_set< SRAM_group * >
 CP4::ordered_set< std::pair< const IR::MAU::Table *, const IR::MAU::Action * > >
 CP4::ordered_set< std::pair< const PHV::Field *, const PHV::Field * > >
 CP4::ordered_set< std::pair< const PHV::Field *, SolitaryConstraint::SolitaryReason > >
 CP4::ordered_set< std::pair< P4::cstring, P4::ClosedRange > >
 CP4::ordered_set< uint8_t >
 CP4::P4CConfiguration
 CP4::P4Fmt::Attach::Comments
 CP4::P4RuntimeAPI
 CP4::P4RuntimeSerializerPublic APIs to generate P4Info message. Uses the singleton pattern
 CP4::P4Tools::AbstractExecutionStateRepresents state of execution after having reached a program point
 CP4::P4Tools::AbstractP4cTool< Options, typename >
 CP4::P4Tools::AbstractP4cTool< SmithOptions >
 CP4::P4Tools::AbstractP4cTool< TestgenOptions >
 CP4::P4Tools::ArchSpecSpecifies a canonical representation of the target pipeline as documented in P4 code
 CP4::P4Tools::ArchSpec::ArchMemberAn ArchMember represents a construct in the pipe. It has a name and parameters
 CP4::P4Tools::FormatOptionsDefines common formatting options
 CP4::P4Tools::Model
 CP4::P4Tools::NamespaceContextRepresents a stack of namespaces
 CP4::P4Tools::P4Constants
 CP4::P4Tools::P4Smith::Constraints
 CP4::P4Tools::P4Smith::Declarations
 CP4::P4Tools::P4Smith::Generator
 CP4::P4Tools::P4Smith::P4Scope
 CP4::P4Tools::P4Smith::Probabilities
 CP4::P4Tools::P4Smith::Properties
 CP4::P4Tools::P4Smith::Requirements
 CP4::P4Tools::P4Smith::Wordlist
 CP4::P4Tools::P4Testgen::Bmv2::BMv2Constants
 CP4::P4Tools::P4Testgen::Bmv2::Lexer
 CP4::P4Tools::P4Testgen::Bmv2::Token
 CP4::P4Tools::P4Testgen::CommandVisitor
 CP4::P4Tools::P4Testgen::Concolic
 CP4::P4Tools::P4Testgen::ConcolicMethodImplsEncapsulates a set of concolic method implementations
 CP4::P4Tools::P4Testgen::Continuation
 CP4::P4Tools::P4Testgen::Continuation::BodyA continuation body is a list of commands
 CP4::P4Tools::P4Testgen::Continuation::Guard
 CP4::P4Tools::P4Testgen::Continuation::Parameter
 CP4::P4Tools::P4Testgen::Continuation::PropertyUpdate
 CP4::P4Tools::P4Testgen::Continuation::Return
 CP4::P4Tools::P4Testgen::EBPF::EBPFConstants
 CP4::P4Tools::P4Testgen::ExecutionState::StackFrame
 CP4::P4Tools::P4Testgen::ExprStepper::ExternMethodImpls< StepperType >Encapsulates a set of extern method implementations
 CP4::P4Tools::P4Testgen::ExprStepper::ExternMethodImpls< P4::P4Tools::P4Testgen::ExprStepper >
 CP4::P4Tools::P4Testgen::ExprStepper::PacketCursorAdvanceInfo
 CP4::P4Tools::P4Testgen::ExternInfo
 CP4::P4Tools::P4Testgen::FinalStateRepresents the final state after execution
 CP4::P4Tools::P4Testgen::PacketVars
 CP4::P4Tools::P4Testgen::Pna::PnaConstants
 CP4::P4Tools::P4Testgen::Pna::PnaSymbolicVarsVariabless are variables that can be controlled and set by P4Testgen
 CP4::P4Tools::P4Testgen::Pna::SharedPnaTableStepper::SharedPnaPropertiesShared PNA table properties
 CP4::P4Tools::P4Testgen::SmallStepEvaluator
 CP4::P4Tools::P4Testgen::SmallStepEvaluator::Branch
 CP4::P4Tools::P4Testgen::SymbolicExecutor
 CP4::P4Tools::P4Testgen::TableStepperImplements small-step operational semantics for tables
 CP4::P4Tools::P4Testgen::TestBackEnd
 CP4::P4Tools::P4Testgen::TestBackEnd::TestInfo
 CP4::P4Tools::P4Testgen::TestBackendConfiguration
 CP4::P4Tools::P4Testgen::TestFramework
 CP4::P4Tools::P4Testgen::TestSpec
 CP4::P4Tools::ReachabilityEngine
 CP4::P4Tools::ReachabilityEngineStateThe main data for reachability engine
 CP4::P4Tools::SymbolicEnv
 CP4::P4Tools::TableUtils::KeyPropertiesKeyProperties define properties of table keys that are useful for execution
 CP4::P4Tools::TableUtils::TablePropertiesBasic table properties that are set when initializing the TableStepper
 CP4::P4Tools::Taint
 CP4::P4Tools::Target
 CP4::P4Tools::Target::SpecSpecifies a target device and architecture by their names in lower case
 CP4::P4Tools::Test::P4ToolsTestCaseEncapsulates functionality for running the front- and mid-ends of the compiler in a test
 CP4::P4Tools::UtilsGeneral utility functions that are not present in the compiler framework
 CP4::P4Tools::Z3SolverAccessor
 CP4::P4V1::ConversionContext
 CP4::P4V1::ExternConverter
 CP4::P4V1::FieldListConverter
 CP4::P4V1::PrimitiveConverter
 CP4::P4V1::ProgramStructureInformation about the structure of a P4-14 program, used to convert it to a P4-16 program
 CP4::P4V1::TableAttributes_Model
 CP4::ParserErrorMessage
 CP4::ParserInfoInformation produced for a parser by the symbolic evaluator
 CP4::ParserStateInfoInformation produced for a parser state by the symbolic evaluator
 CP4::ParserStructureInformation about a parser in the input program
 CP4::ParserStructureImpl::ParserSymbolicInterpreter
 CP4::PassManager::VisitorRef
 CP4::Pattern
 CP4::Pattern::Match< T >
 CP4::PauseTrace
 CP4::PerInstanceSubstitutions
 CP4::primitive_info_t
 CP4::ProgramStructure
 CP4::PushContext
 CP4::RangeIter< T >
 CP4::RemoveComplexExpressionsPolicy
 CP4::RemoveUnusedPolicy
 CP4::RenameMap
 CP4::ReplacementMap
 CP4::RTTI::Base
 CP4::RTTI::Detail::IsType< Targets >
 CP4::RTTI::Detail::ToType< To, typename >
 CP4::RTTI::detail::TypeIdResolver< T, typename >
 CP4::RTTI::detail::TypeIdResolver< T, std::void_t< decltype(T::static_typeId)> >
 CP4::RTTI::detail::TypeNameHolder
 CP4::RTTI::TypeInfo< This, Parents >
 CP4::SameExpression
 CP4::SaturationElimContains utility functions for eliminating saturating arithmetic
 CP4::SimpleInlineList< Callable, CallInfo, InlineWorkList >
 CP4::SimpleInlineList< IR::Node, FunctionCallInfo, FunctionsInlineWorkList >
 CP4::SimpleInlineList< IR::P4Action, ActionCallInfo, AInlineWorkList >
 CP4::SimplifyComplexConditionPolicy
 CP4::SkipControlPolicy
 CP4::SpecializationInfoDescribes how a parser or control is specialized
 CP4::SpecializationMapMaintains a map from invocation to a SpecializationInfo object
 CP4::SplitFlowVisit_base
 CP4::StackVariable
 CP4::StackVariableHashClass with hash function for StackVariable
 CP4::StorageFactory
 CP4::string_map< V >
 CP4::string_map< const P4::IR::IDeclaration * >
 CP4::string_map< IJson * >
 CP4::string_map< unsigned >
 CP4::StringRef
 CP4::StringRef::Split
 CP4::SymbolicValueFactory
 CP4::SymRenameMap
 CP4::TableApplySolver
 CP4::TableInsertions
 CP4::TC::ActionAttributes
 CP4::TC::ActionParam
 CP4::TC::Annotation
 CP4::TC::ConvertToBackendIR::ExternBlock
 CP4::TC::ConvertToBackendIR::ExternInstance
 CP4::TC::Extern
 CP4::TC::ExternAttributes
 CP4::TC::ExternInstancesAttributes
 CP4::TC::IntrospectionInfo
 CP4::TC::KeyFieldAttributes
 CP4::TC::MidEnd
 CP4::TC::TableAttributes
 CP4::Test::ContainerAction::Result
 CP4::Test::MidendTestCase
 CP4::Test::SliceSpec
 CP4::Test::TestCode
 CP4::Test::TofinoPipeTestCase
 CP4::ToP4::ListPrint
 CP4::ToP4::VecPrint
 CP4::TypeInferenceBase::Comparison
 CP4::TypeUnification
 CP4::UniqueAttachedId
 CP4::UniqueId
 CP4::UnparsedConstant
 CP4::UnrollLoops::loop_bounds_t
 CP4::UnrollLoops::Policy
 CP4::Util::BitRange
 CP4::Util::Detail::FloatHasher< Float >
 CP4::Util::Detail::FloatHasher< double >
 CP4::Util::Detail::FloatHasher< float >
 CP4::Util::Detail::IntegerHasher< Int >
 CP4::Util::Detail::IntegerHasher< char >
 CP4::Util::Detail::IntegerHasher< signed char >
 CP4::Util::Detail::IntegerHasher< signed int >
 CP4::Util::Detail::IntegerHasher< signed long >
 CP4::Util::Detail::IntegerHasher< signed long long >
 CP4::Util::Detail::IntegerHasher< signed short >
 CP4::Util::Detail::IntegerHasher< unsigned char >
 CP4::Util::Detail::IntegerHasher< unsigned int >
 CP4::Util::Detail::IntegerHasher< unsigned long >
 CP4::Util::Detail::IntegerHasher< unsigned long long >
 CP4::Util::Detail::IntegerHasher< unsigned short >
 CP4::Util::Detail::StdHasher
 CP4::Util::Detail::TupleHasher< index, Types >
 CP4::Util::Detail::TupleHasher< 0, Types... >
 CP4::Util::Enumerator< T >Type-erased Enumerator interface
 CP4::Util::Enumerator< S >
 CP4::Util::Enumerator< std::iterator_traits< Iter >::value_type >
 CP4::Util::EnumeratorHandle< T >
 CP4::Util::Hash
 CP4::Util::Hasher< Key, Enable >
 CP4::Util::Hasher< bool >
 CP4::Util::Hasher< ClosedRange< Unit, Order > >
 CP4::Util::Hasher< cstring >
 CP4::Util::Hasher< HalfOpenRange< Unit, Order > >
 CP4::Util::Hasher< IR::ID >
 CP4::Util::Hasher< P4::ProgramPoint >
 CP4::Util::Hasher< std::pair< T1, T2 > >
 CP4::Util::Hasher< std::shared_ptr< T > >
 CP4::Util::Hasher< std::string >
 CP4::Util::Hasher< std::string_view >
 CP4::Util::Hasher< std::tuple< Types... > >
 CP4::Util::Hasher< std::unique_ptr< T > >
 CP4::Util::Hasher< T * >
 CP4::Util::IHasSourceInfo
 CP4::Util::InputSources
 CP4::Util::iterator_range< Iter, Sentinel >
 CP4::Util::Options
 CP4::Util::Options::Option
 CP4::Util::ProgramStructure
 CP4::Util::ScopedTimer
 CP4::Util::ScopedTimerCtx
 CP4::Util::SourceCodeBuilder
 CP4::Util::SourceFileLine
 CP4::Util::SourceInfo
 CP4::Util::SourcePosition
 CP4::Util::TimerEntry
 CP4::VisitedKeyThe main class for parsers' states key for visited checking
 CP4::Visitor
 CP4::Visitor::ChangeTrackerAssists visitors in traversing the IR
 CP4::Visitor::profile_t
 CP4::Visitor::TrackerAssists visitors in traversing the IR
 CP4::Visitor_Context
 CP4CContext
 Cp4tc_ext_bpf_params
 Cp4tc_ext_bpf_val
 Cp4tc_ext_csum_params
 Cp4tc_table_entry_act_bpf_params__local
 Cp4tc_table_entry_create_bpf_params__local
 CP4WriteContext
 CPairLess< A, B, AComp, BCmp >
 CParde::Lowered::ExtractSimplifierHelper class that splits extract operations into multiple smaller extracts, such that each extract writes to exactly one PHV container
 CPardeSpec
 CParser::Def
 CParser::Use
 CParser::UseDef
 CParserAsmOutput
 CParserCriticalPathResult
 CParserQueryCollection of functions to check parser information
 CPassManager
 Cpcap_pkt
 CPhase0AsmOutput
 CPHV::AbstractField
 CPHV::ActionPackingValidatorInterface
 CPHV::ActionPackingValidatorInterface::Result
 CPHV::Allocation
 CPHV::Allocation::AvailableSpotAvailable bits of this allocation
 CPHV::Allocation::ConditionalConstraintData
 CPHV::Allocation::ContainerStatus
 CPHV::AllocationReport
 CPHV::AllocContextRepresents a PHV-allocation context: a parser, a table, or a deparser
 CPHV::AllocSetting
 CPHV::AllocSlice
 CPHV::AllocUtils
 CPHV::ClusterStatsAn interface for gathering statistics common across each kind of cluster
 CPHV::CollectTableKeys::TableProp
 CPHV::Container
 CPHV::ContainerEquivalenceTracker
 CPHV::ContainerGroup
 CPHV::ContainerOccupancy
 CPHV::DarkInitEntry
 CPHV::DarkInitPrimitive
 CPHV::Field::mirror_field_list_tA mirror field points to its field list (one of eight)
 CPHV::FieldOperation
 CPHV::FieldRange
 CPHV::FieldUse
 CPHV::FreeSlice
 CPHV::IFieldSliceLiveRangeDB
 CPHV::LiveRange
 CPHV::LiveRangeInfo
 CPHV::LiveRangeSplit
 CPHV::MiniAlloc
 CPHV::PackingLayout
 CPHV::PackingLayout::FieldRangeOrPadding
 CPHV::ParserPackingValidatorInterface
 CPHV::SliceResult< Cluster >The result of slicing a cluster
 CPHV::Slicing::AfterSplitConstraintConstraints introduced on fieldslices of container sizes after splitting a slice list
 CPHV::Slicing::Internal::ScSubRangeFsFinder
 CPHV::Slicing::IteratorConfig
 CPHV::Slicing::IteratorInterfaceThe interface that the iterator must satisfy
 CPHV::Slicing::NextSplitChoiceMetrics
 CPHV::Slicing::NextSplitTargetMetrics
 CPHV::Slicing::RangeLookupableConstraints
 CPHV::SourceOpSourceOp represents a source operand
 CPHV::TempVarAllocResult
 CPHV::Type
 CPHV::v2::AllocatorBase
 CPHV::v2::AllocatorBase::DfsListsAllocator
 CPHV::v2::AllocatorBase::DfsState
 CPHV::v2::AllocatorMetricsAllocatorMetrics contains metrics useful in tracking Allocator efficiency and debug
 CPHV::v2::AllocError
 CPHV::v2::AllocResult
 CPHV::v2::CoPackerCoPacker is the method that compute and generates copack constraints
 CPHV::v2::CoPackHint
 CPHV::v2::CoPackResultResult type that either has some copack hints, or an error
 CPHV::v2::FsPacker
 CPHV::v2::IxbarFriendlyPacking
 CPHV::v2::KindSizeIndexedMap
 CPHV::v2::PhvKit
 CPHV::v2::ScAllocAlignment
 CPHV::v2::ScoreContextScoreContext is the allocation context that is updated and passed down during allocation
 CPHV::v2::SearchConfigCollection of allocation configurations that balances speed and performance of allocation
 CPHV::v2::SomeContScopeAllocResult
 CPHV::v2::SrcPackVec
 CPHV::v2::TrivialAllocator::PartialAllocResult
 CPHV::v2::TrivialAllocator::PhvStatusPhvStatus bookkeeper for containers
 CPHV::v2::TrivialAllocator::PreSlicingResult
 CPHV::v2::TxScoreTxScore is the interface of an allocation score
 CPHV::v2::TxScoreMakerTxScoreMaker is the interface of the factory class of TxScore
 CPHV::v2::Vision
 CPhvAsmOutput
 CPhvInfo
 CPhvInfo::SameContainerAllocConstraint
 CPhvInfo::StructInfoPHV-related info about structs, i.e. collections of header or metadata fields
 CPhvLogging::PardeInfo
 CPhvSpec
 CPhvSpec::MauGroupType
 CPhvSpec::RangeSpec
 CPHVTrigger
 Cpna_global_metadata
 Cpna_main_input_metadata_t
 Cpna_main_output_metadata_t
 Cpna_main_parser_input_metadata_t
 Cpointer_wrap< T >
 CPragma::PrettyPrint
 CPragmaAlias::AliasDestination
 CPragmaBytePack::AddConstraintResult
 CPragmaBytePack::PackConstraint
 CPropagateExtractConst::ResolveExtractConst::AmbiguousPropagation
 Cpsa_egress_deparser_input_metadata_t
 Cpsa_egress_input_metadata_t
 Cpsa_egress_output_metadata_t
 Cpsa_egress_parser_input_metadata_t
 Cpsa_global_metadata
 Cpsa_ingress_input_metadata_t
 Cpsa_ingress_output_metadata_t
 Cpsa_ingress_parser_input_metadata_tINGRESS data types
 Crapidjson::Document
 CReachability< Graph >
 CReductionOrInfo
 CRerunTablePlacementTrigger
 CReversibleParserGraph
 CRunId
 CSccTopoSorter
 CScoreContextScoreContext can compute a alloc score for an PHV::Transaction
 Csk_buffSimple descriptor which replaces the kernel sk_buff structure
 CSlice
 CSliceListAccumulator
 Csolver::ActionSolverBaseActionSolverBase contains basic methods and states for all solvers
 Csolver::AssignAssign is a set instruction that move operand src bits to dst
 Csolver::ContainerSpecContainerSpec container specification
 Csolver::ErrorError type for all solver
 Csolver::Instruction
 Csolver::OperandOperand represents either a source or a destination of an instruction
 Csolver::ResultResult contains either an error or all instructions for an action
 Csolver::symbolic_bitvec::BitVec
 Csolver::symbolic_bitvec::BvContext
 Csolver::symbolic_bitvec::Expr
 CSortExtracts
 CStageUseEstimate
 CStageUseEstimate::RAM_counter
 CStateExtractUsage
 CStatefulConflict
 Cstd::basic_streambuf
 Cstd::basic_string< Char >STL class
 Cstd::enable_if
 Cstd::exceptionSTL class
 Cstd::false_type
 Cstd::hash< P4::ClosedRange< Unit, Order > >
 Cstd::hash< P4::ComputeDefUse::loc_t >
 Cstd::hash< P4::cstring >
 Cstd::hash< P4::HalfOpenRange< Unit, Order > >
 Cstd::hash< P4::loc_t >
 Cstd::hash< P4::ProgramPoint >
 Cstd::hash< std::pair< T1, T2 > >
 Cstd::hash< std::tuple< Types... > >
 Cstd::integral_constant
 Cstd::ios_baseSTL class
 Cstd::is_base_of
 Cstd::iterator
 Cstd::map< K, T >STL class
 Cstd::set< K >STL class
 Cstd::true_type
 Cstd::unique_ptr< T >STL class
 Cstd::unordered_map< const IR::MAU::Table *, P4::safe_vector< MinEdgeInfo >, boost::hash< const IR::MAU::Table * >, std::equal_to< const IR::MAU::Table * >, std::allocator< std::pair< const const IR::MAU::Table *, P4::safe_vector< MinEdgeInfo > > > >
 Cstd::unordered_map< const PHV::Field *, assoc::hash_set< const PHV::Field * >, boost::hash< const PHV::Field * >, std::equal_to< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, assoc::hash_set< const PHV::Field * > > > >
 Cstd::unordered_map< const PHV::Field *, assoc::map< P4::ClosedRange, PHV::Slicing::AfterSplitConstraint >, boost::hash< const PHV::Field * >, std::equal_to< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, assoc::map< P4::ClosedRange, PHV::Slicing::AfterSplitConstraint > > > >
 Cstd::unordered_map< const PHV::Field *, P4::ordered_set< P4::ClosedRange >, boost::hash< const PHV::Field * >, std::equal_to< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, P4::ordered_set< P4::ClosedRange > > > >
 Cstd::unordered_map< const PHV::Field *, P4::ordered_set< PHV::FieldSlice >, boost::hash< const PHV::Field * >, std::equal_to< const PHV::Field * >, std::allocator< std::pair< const const PHV::Field *, P4::ordered_set< PHV::FieldSlice > > > >
 Cstd::unordered_map< const PHV::FieldSlice, P4::ordered_set< const SliceList * >, boost::hash< const PHV::FieldSlice >, std::equal_to< const PHV::FieldSlice >, std::allocator< std::pair< const const PHV::FieldSlice, P4::ordered_set< const SliceList * > > > >
 Cstd::unordered_map< Key, T, boost::hash< Key >, std::equal_to< Key >, std::allocator< std::pair< const Key, T > > >
 Cstd::unordered_map< PHV::Container, P4::ordered_set< const PHV::Field * >, boost::hash< PHV::Container >, std::equal_to< PHV::Container >, std::allocator< std::pair< const PHV::Container, P4::ordered_set< const PHV::Field * > > > >
 Cstd::unordered_map< PHV::FieldSlice, PHV::Slicing::AfterSplitConstraint, boost::hash< PHV::FieldSlice >, std::equal_to< PHV::FieldSlice >, std::allocator< std::pair< const PHV::FieldSlice, PHV::Slicing::AfterSplitConstraint > > >
 Cstd::unordered_map< PHV::Size, P4::ordered_map< ContainerAllocStatus, int >, boost::hash< PHV::Size >, std::equal_to< PHV::Size >, std::allocator< std::pair< const PHV::Size, P4::ordered_map< ContainerAllocStatus, int > > > >
 Cstd::unordered_map< std::pair< const IR::BFN::ParserState *, const IR::Expression * >, std::vector< const IR::BFN::ParserPrimitive * >, boost::hash< std::pair< const IR::BFN::ParserState *, const IR::Expression * > >, std::equal_to< std::pair< const IR::BFN::ParserState *, const IR::Expression * > >, std::allocator< std::pair< const std::pair< const IR::BFN::ParserState *, const IR::Expression * >, std::vector< const IR::BFN::ParserPrimitive * > > > >
 Cstd::unordered_set< K >STL class
 Cstd::vector< T >STL class
 Cstd::vector< dyn_vector< const IR::MAU::Table * >, std::allocator< dyn_vector< const IR::MAU::Table * > > >
 Cstd::vector< dyn_vector< int >, std::allocator< dyn_vector< int > > >
 Cstd::vector< P4::safe_vector< int >, std::allocator< P4::safe_vector< int > > >
 Cstd::vector< std::pair< HashFuncLoc, const Tofino::IXBar::HashDistIRUse * >, std::allocator< std::pair< HashFuncLoc, const Tofino::IXBar::HashDistIRUse * > > >
 Cstd::vector< std::pair< int, int >, std::allocator< std::pair< int, int > > >
 Cstd::vector< std::pair< int, P4::ClosedRange >, std::allocator< std::pair< int, P4::ClosedRange > > >
 Cstd::vector< T, std::allocator< std::vector< const IR::MAU::Table * > > >
 CSuperClusterBuilderA helpfull class for building SuperClusters
 CTableFormat
 CTableFormat::Use
 CTableFormat::Use::match_group_use
 CTableFormat::Use::TCAM_use
 CTableGraphEdge
 CTableGraphField
 CTableGraphNode
 CTableGraphNode::TableGraphNodeTable
 CTableMatch
 CTableMatch::ProxyHashSlice
 CTableMutex::Shared
 CTablePlacement::Placed
 CTablePlacement::RejectReason
 CTablePlacement::TableInfo
 CTablePlacement::TableSeqInfo
 CTablePrinter
 CTableResourceAlloc
 CTableSummary::PlacedTable
 CTableTree
 Ctesting::Test
 CTofino::ActionDataBus::Use::RandomNumberGenerator
 CTofino::IXBar::hash_matrix_reqs
 CTofino::IXBar::HashDistAllocPostExpand
 CTofino::IXBar::HashDistIRUse
 CTofino::IXBar::HashDistUse
 CTofino::IXBar::Use::Bits
 CTofino::IXBar::Use::HashDistHash
 CTofino::IXBar::Use::MeterAluHash
 CTofino::IXBar::Use::ProxyHashKey
 CTofino::IXBar::Use::SaluInputSource
 CTofino::Memories::SRAM_group::color_mapram_group
 CTofino::Memories::SRAM_group::selector_info
 CTransactData
 CTransform
 CTypeComparator
 CUT_hash_bucket
 CUT_hash_handle
 CUT_hash_table
 CValue
 CVersionMap
 CVisitor
 CWithParamInterface