SymbolsPass

com.reactific.riddl.passes.symbols.SymbolsPass
See theSymbolsPass companion object
case class SymbolsPass(input: PassInput) extends Pass

Symbol Table for Validation and other purposes. This symbol table is built from the AST model after syntactic parsing is complete. It will also work for any sub-tree of the model that is rooted by a ParentDefOf[Definition] node.

The symbol tree contains a mapping from leaf name to the entire list of parent definitions (symbols) as well as a mapping from definitions to their parents (parentage). Bot maps are built during a single pass of the AST.

Value parameters

input

The output of the parser pass is the input to SymbolPass

Attributes

Companion
object
Graph
Supertypes
trait Serializable
trait Product
trait Equals
class Pass
class Object
trait Matchable
class Any
Show all

Members list

Value members

Concrete methods

override def close(): Unit

Close any resources used so this can be used with AutoCloseable or Using.Manager

Close any resources used so this can be used with AutoCloseable or Using.Manager

Attributes

Definition Classes
override def name: String

THe name of the pass for inclusion in messages it produces

THe name of the pass for inclusion in messages it produces

Attributes

Returns

A string value giving the name of this pass

Definition Classes
override def postProcess(root: RootContainer): Unit

Attributes

Definition Classes
def process(definition: Definition, parents: Stack[Definition]): Unit
override def result: SymbolsOutput

Generate the output of this Pass.

Generate the output of this Pass. This will only be called after all the calls to process have completed.

Attributes

Returns

an instance of the output type

Definition Classes

Inherited methods

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product