Dsxir.Predicate.Source (dsxir v0.4.0)

Copy Markdown

Holds a predicate source string. The parsed AST is attached later by the predicate parser; until then ast: stays nil. Hashing uses only the :source field, so attaching an AST never changes a program's version.

Summary

Functions

Attach a parsed AST to a %Source{}. Used by the Validator post-parse.

Types

t()

@type t() :: %Dsxir.Predicate.Source{
  ast: nil | Dsxir.Predicate.AST.t(),
  source: String.t()
}

Functions

attach_ast(src, ast)

@spec attach_ast(t(), Dsxir.Predicate.AST.t()) :: t()

Attach a parsed AST to a %Source{}. Used by the Validator post-parse.