Skip to main content

Module ast

Module ast 

Source
Expand description

Abstract Syntax Tree definitions for the Symbiont DSL

Structs§

AgentDefinition
Agent definition
AgentMetadata
Agent metadata
Assignment
Assignment expression
BehaviorDefinition
Behavior definition
BinaryOperation
Binary operation
Block
Block of statements
CheckStatement
Check statement for policies
ConditionalExpression
Conditional expression (ternary operator)
DurationValue
Duration value with unit
ElseIf
Else-if clause
EmitStatement
Emit statement for events
EventHandler
Event handler definition
FieldAccess
Field access (e.g., obj.field)
ForStatement
For loop statement
FunctionCall
Function call
FunctionDefinition
Function definition
Identifier
Identifier
IfStatement
If statement
IndexAccess
Index access (e.g., arr[0])
InvokeExpression
Invoke expression for behavior invocation
LambdaExpression
Lambda expression
LetStatement
Let statement for variable binding
ListExpression
List expression
MapEntry
Map entry
MapExpression
Map expression
MatchArm
Match arm
MatchStatement
Match statement for pattern matching
MethodCall
Method call (e.g., obj.method(args))
Parameter
Parameter definition
ParameterList
Parameter list for functions and behaviors
PolicyConfig
Policy configuration
Program
Root AST node representing a complete DSL program
RequireStatement
Require statement for capabilities
ResourceConfig
Resource configuration
ReturnStatement
Return statement
SecurityConfig
Security configuration
SizeValue
Size value with unit
SourceLocation
Source location information for error reporting and debugging
Span
Span of source code
StructDefinition
Struct definition
StructField
Struct field
TryStatement
Try-catch statement
UnaryOperation
Unary operation
WhileStatement
While loop statement

Enums§

BinaryOperator
Binary operators
Declaration
Top-level declarations in the DSL
DurationUnit
Duration units
Expression
Expression types
FailureAction
Failure actions
Literal
Literal values
Pattern
Pattern for matching
RequirementType
Requirement types
SandboxMode
Sandbox modes
SecurityTier
Security tier levels
SizeUnit
Size units
Statement
Statement types
Type
Type definitions
UnaryOperator
Unary operators

Traits§

AstVisitor
Visitor trait for traversing the AST
AstVisitorMut
Mutable visitor trait for transforming the AST