#################### API Reference #################### This reference documents all PSS AST classes generated by the pssparser. Classes are organized by category for easy navigation. .. contents:: Table of Contents :local: :depth: 2 ********************** Checker Plug-in API ********************** These classes form the public API for writing and registering pssparser checker plug-ins. See :doc:`checker_plugin_guide` for a usage guide. .. autoclass:: pssparser.checkers.MarkerDef :members: :undoc-members: .. autoclass:: pssparser.checkers.CheckerBase :members: :undoc-members: .. autoclass:: pssparser.checkers.CheckContext :members: :undoc-members: .. autoclass:: pssparser.checkers.CheckerManager :members: :undoc-members: ****************** Core AST Structure ****************** Base Classes ============ These fundamental classes form the foundation of the AST hierarchy. .. autoclass:: pssparser.ast.ScopeChild :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.Scope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.GlobalScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.NamedScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.NamedScopeChild :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.PackageScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TypeScope :members: :undoc-members: :show-inheritance: Package and Imports =================== Classes for managing package declarations and import statements. .. autoclass:: pssparser.ast.PackageImportStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.PyImportStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.PyImportFromStmt :members: :undoc-members: :show-inheritance: Utilities ========= .. autoclass:: pssparser.ast.AssocData :members: :undoc-members: .. autoclass:: pssparser.ast.ScopeChildRef :members: :undoc-members: :show-inheritance: ************ Type System ************ Data Types ========== Core PSS data types for fields and expressions. .. autoclass:: pssparser.ast.DataType :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeBool :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeInt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeString :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeEnum :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeUserDefined :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeRef :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypeChandle :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.DataTypePyObj :members: :undoc-members: :show-inheritance: Enumerations ============ .. autoclass:: pssparser.ast.EnumDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.EnumItem :members: :undoc-members: :show-inheritance: *********** Declarations *********** Actions and Components ====================== Top-level behavioral and structural types. .. autoclass:: pssparser.ast.Action :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.Component :members: :undoc-members: :show-inheritance: Struct Types ============ Data structures including buffers, streams, resources, and states. .. autoclass:: pssparser.ast.Struct :members: :undoc-members: :show-inheritance: Fields ====== Field declarations within types. .. autoclass:: pssparser.ast.Field :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FieldRef :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FieldClaim :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FieldCompRef :members: :undoc-members: :show-inheritance: *********** Expressions *********** Base Expression Classes ======================= .. autoclass:: pssparser.ast.Expr :members: :undoc-members: :show-inheritance: Literals ======== .. autoclass:: pssparser.ast.ExprBool :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprNumber :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprSignedNumber :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprUnsignedNumber :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprString :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprNull :members: :undoc-members: :show-inheritance: Identifiers and References =========================== .. autoclass:: pssparser.ast.ExprId :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprHierarchicalId :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPath :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathElem :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathId :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathStatic :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathStaticFunc :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathStaticRooted :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathContext :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprRefPathSuper :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprStaticRefPath :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprMemberPathElem :members: :undoc-members: :show-inheritance: Operators ========= Binary and unary operations. .. autoclass:: pssparser.ast.ExprBin :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprUnary :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprCond :members: :undoc-members: :show-inheritance: Array and Bit Operations ========================= .. autoclass:: pssparser.ast.ExprSubscript :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprBitSlice :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprSubstring :members: :undoc-members: :show-inheritance: Type Operations =============== .. autoclass:: pssparser.ast.ExprCast :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprCompileHas :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprIn :members: :undoc-members: :show-inheritance: Aggregate Expressions ===================== List, map, and struct literals. .. autoclass:: pssparser.ast.ExprAggrLiteral :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrEmpty :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrList :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprListLiteral :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrMap :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrMapElem :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrStruct :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprAggrStructElem :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprStructLiteral :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprStructLiteralItem :members: :undoc-members: :show-inheritance: Domain Expressions ================== .. autoclass:: pssparser.ast.ExprDomainOpenRangeList :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprDomainOpenRangeValue :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprOpenRangeList :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExprOpenRangeValue :members: :undoc-members: :show-inheritance: ********** Activities ********** Activity Statements =================== Control flow within action activity blocks. .. autoclass:: pssparser.ast.ActivityStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityLabeledStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityLabeledScope :members: :undoc-members: :show-inheritance: Sequential and Parallel Execution ================================== .. autoclass:: pssparser.ast.ActivitySequence :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityParallel :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivitySchedule :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityAtomicBlock :members: :undoc-members: :show-inheritance: Join Specifications =================== Synchronization semantics for parallel activities. .. autoclass:: pssparser.ast.ActivityJoinSpec :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityJoinSpecNone :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityJoinSpecFirst :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityJoinSpecBranch :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityJoinSpecSelect :members: :undoc-members: :show-inheritance: Branch Selection ================ .. autoclass:: pssparser.ast.ActivitySelect :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivitySelectBranch :members: :undoc-members: :show-inheritance: Loops and Repetition ===================== .. autoclass:: pssparser.ast.ActivityRepeatCount :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityRepeatWhile :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityForeach :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityReplicate :members: :undoc-members: :show-inheritance: Conditionals and Matching ========================== .. autoclass:: pssparser.ast.ActivityIfElse :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityMatch :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityMatchChoice :members: :undoc-members: :show-inheritance: Traversals ========== .. autoclass:: pssparser.ast.ActivityActionHandleTraversal :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityActionTypeTraversal :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivitySuper :members: :undoc-members: :show-inheritance: Activity Constraints ==================== .. autoclass:: pssparser.ast.ActivityConstraint :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivityBindStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ActivitySchedulingConstraint :members: :undoc-members: :show-inheritance: *********** Constraints *********** Constraint Blocks ================= .. autoclass:: pssparser.ast.ConstraintBlock :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintSymbolScope :members: :undoc-members: :show-inheritance: Constraint Statements ===================== .. autoclass:: pssparser.ast.ConstraintStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtExpr :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtField :members: :undoc-members: :show-inheritance: Constraint Loops ================ .. autoclass:: pssparser.ast.ConstraintStmtForeach :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtForall :members: :undoc-members: :show-inheritance: Conditional Constraints ======================= .. autoclass:: pssparser.ast.ConstraintStmtIf :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtImplication :members: :undoc-members: :show-inheritance: Constraint Modifiers ==================== .. autoclass:: pssparser.ast.ConstraintStmtUnique :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtDefault :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ConstraintStmtDefaultDisable :members: :undoc-members: :show-inheritance: *************** Procedural Code *************** Exec Blocks =========== .. autoclass:: pssparser.ast.ExecBlock :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExecScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExecStmt :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExecTargetTemplateBlock :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExecTargetTemplateParam :members: :undoc-members: :show-inheritance: Procedural Statements ===================== .. autoclass:: pssparser.ast.ProceduralStmtAssignment :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtExpr :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtFunctionCall :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtDataDeclaration :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtReturn :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtBody :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtSymbolBodyScope :members: :undoc-members: :show-inheritance: Control Flow ============ .. autoclass:: pssparser.ast.ProceduralStmtIfElse :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtIfClause :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtMatch :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtMatchChoice :members: :undoc-members: :show-inheritance: Loops ===== .. autoclass:: pssparser.ast.ProceduralStmtWhile :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtRepeat :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtRepeatWhile :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtForeach :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtBreak :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtContinue :members: :undoc-members: :show-inheritance: Special Statements ================== .. autoclass:: pssparser.ast.ProceduralStmtYield :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ProceduralStmtRandomize :members: :undoc-members: :show-inheritance: ********* Functions ********* Function Declarations ===================== .. autoclass:: pssparser.ast.FunctionDefinition :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FunctionPrototype :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FunctionParamDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MethodParameterList :members: :undoc-members: :show-inheritance: Function Imports ================ .. autoclass:: pssparser.ast.FunctionImport :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FunctionImportType :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.FunctionImportProto :members: :undoc-members: :show-inheritance: ******** Monitors ******** PSS 3.0 monitors for behavioral coverage and assertions. Monitor Declarations ==================== .. autoclass:: pssparser.ast.Monitor :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityStmt :members: :undoc-members: :show-inheritance: Monitor Activities ================== .. autoclass:: pssparser.ast.MonitorActivitySequence :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityConcat :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityEventually :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityOverlap :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivitySchedule :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivitySelect :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivitySelectBranch :members: :undoc-members: :show-inheritance: Monitor Control Flow ==================== .. autoclass:: pssparser.ast.MonitorActivityRepeatCount :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityRepeatWhile :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityIfElse :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityMatch :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityMatchChoice :members: :undoc-members: :show-inheritance: Monitor Traversals ================== .. autoclass:: pssparser.ast.MonitorActivityActionTraversal :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.MonitorActivityMonitorTraversal :members: :undoc-members: :show-inheritance: Monitor Constraints =================== .. autoclass:: pssparser.ast.MonitorConstraint :members: :undoc-members: :show-inheritance: Coverage ======== .. autoclass:: pssparser.ast.CoverStmtInline :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.CoverStmtReference :members: :undoc-members: :show-inheritance: ********* Templates ********* Template Parameters =================== .. autoclass:: pssparser.ast.TemplateParamDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateParamDeclList :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateValueParamDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateGenericTypeParamDecl :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateCategoryTypeParamDecl :members: :undoc-members: :show-inheritance: Template Values =============== .. autoclass:: pssparser.ast.TemplateParamValue :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateParamValueList :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateParamExprValue :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TemplateParamTypeValue :members: :undoc-members: :show-inheritance: ******************** Symbol Resolution ******************** Symbol Scopes ============= Internal classes for name resolution and linking. .. autoclass:: pssparser.ast.SymbolChild :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolChildrenScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.RootSymbolScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolTypeScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolEnumScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolFunctionScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolExtendScope :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolScopeRef :members: :undoc-members: :show-inheritance: Symbol References ================= .. autoclass:: pssparser.ast.SymbolRefPath :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.SymbolImportSpec :members: :undoc-members: :show-inheritance: Reference Expressions ===================== .. autoclass:: pssparser.ast.RefExpr :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.RefExprScopeIndex :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.RefExprTypeScopeContext :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.RefExprTypeScopeGlobal :members: :undoc-members: :show-inheritance: ********** Extensions ********** Type Extension ============== .. autoclass:: pssparser.ast.ExtendType :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.ExtendEnum :members: :undoc-members: :show-inheritance: *************** Type Identifiers *************** .. autoclass:: pssparser.ast.TypeIdentifier :members: :undoc-members: :show-inheritance: .. autoclass:: pssparser.ast.TypeIdentifierElem :members: :undoc-members: :show-inheritance: