webql/assembler/linker/program

Copy Markdown

Types

Edge

pub type Edge {
  Edge(source: Source, target: Target)
}
Edge(source: Source, target: Target)

Node

pub type Node(task) {
  Node(resolver: schema.Resolver(task))
  Supernode(program: Program(task))
}
Node(resolver: schema.Resolver(task))
Supernode(program: Program(task))

Program

pub type Program(task) {
  Program(
    nodes: dict.Dict(String, Node(task)),
    edges: List(Edge),
  )
}
Program(nodes: dict.Dict(String, Node(task)), edges: List(Edge))

Source

pub type Source {
  Output(path: List(String))
  Literal(value: dynamic.Dynamic)
}
Output(path: List(String))
Literal(value: dynamic.Dynamic)

Target

pub type Target {
  Input(path: List(String))
}
Input(path: List(String))