Module brane_ast::ast

source ·
Expand description

Defines the brane-ast AST, which is defined as an acyclic* graph where the nodes are external, orchestratable and policy-sensitive tasks (e.g., compute tasks or transfer tasks), and the edges are ‘control flow’ that are small pieces of BraneScript that decide which task to compute next. Can be thought of as a graph with intelligent edges.

Structs§

  • Defines a class that is referenced in the edges.
  • Defines the contents of a compute task.
  • Defines a function that is referenced in the edges.
  • A static FunctionDef for main.
  • Defines a piece of metadata.
  • Defines the SymTable, which is like a symbol table (very much so, even) but now specific to Workflowland.
  • A static FunctionDef for the Transfer.
  • Defines a variable that is referenced in the edges.
  • Defines a Workflow, which is meant to be an ‘executable but reasonable’ graph.

Enums§

  • Defines an Edge (i.e., an intelligent control-flow operation) in the Workflow graph.
  • Defines an instruction for use within edges, which performs some computation in BraneScriptland (i.e., the edges).
  • Defines a Task (i.e., a Node) in the Workflow graph.