slang/ast/SemanticFacts.h file

Semantic enums and conversion methods.

Namespaces

namespace slang
Root namespace.
namespace slang::ast
The SystemVerilog AST.

Classes

class slang::ast::SemanticFacts
A helper class that can extract semantic AST information from tokens and syntax nodes.
class slang::ast::ClockingSkew
Represents a skew value that is applied to clocking block signals.

Enums

enum class VariableLifetime { Automatic, Static }
Specifies the lifetime of a variable.
enum class Visibility { Public, Protected, Local }
Specifies the visibility of a symbol or member.
enum class ArgumentDirection { In, Out, InOut, Ref }
Specifies the direction of an argument passed to a port or subroutine.
enum class ProceduralBlockKind { Initial, Final, Always, AlwaysComb, AlwaysLatch, AlwaysFF }
Specifies possible procedural block kinds.
enum class StatementBlockKind { Sequential, JoinAll, JoinAny, JoinNone }
Specifies the kind of a statement block.
enum class DefinitionKind { Module, Interface, Program }
Specifies the kind of a definition.
enum class UnconnectedDrive { None, Pull0, Pull1 }
Specifies possible unconnected drive settings.
enum class EdgeKind { None, PosEdge, NegEdge, BothEdges }
Specifies possible edge kinds.
enum class SubroutineKind { Function, Task }
Specifies possible subroutine kinds.
enum class AssertionKind { Assert, Assume, CoverProperty, CoverSequence, Restrict, Expect }
Specifies possible assertion kinds.
enum class ElabSystemTaskKind { Fatal, Error, Warning, Info, StaticAssert }
Specifies possible elaboration system task kinds.
enum class RandMode { None, Rand, RandC }
Specifies possible randomization modes.
enum class PrimitivePortDirection { In, Out, OutReg, InOut }
Specifies possible directions of primitive ports.
enum class PulseStyleKind { OnEvent, OnDetect, ShowCancelled, NoShowCancelled }
Specifies possible pulse style kinds.
enum class ChargeStrength { Small, Medium, Large }
Specifies possible charge strengths.
enum class DriveStrength { Supply, Strong, Pull, Weak, HighZ }
Specifies possible drive strengths.
enum class ForwardTypeRestriction { None, Enum, Struct, Union, Class, InterfaceClass }
Specifies possible forward type restrictions.
enum class CaseStatementCondition { Normal, WildcardXOrZ, WildcardJustZ, Inside }
Specifies possible case statement condition kinds.
enum class AssignFlags: uint8_t { None = 0, NonBlocking = 1 << 0, InConcat = 1 << 1, InOutPort = 1 << 2 }
A set of flags that control how assignments are checked.