Bloccs.Node (bloccs v0.1.1)

Copy Markdown View Source

use Bloccs.Node, manifest: "path/to/node.bloccs"

Reads the manifest at compile time, validates it, confirms the pure_core / effect_shell functions exist with the right arity, and exposes the parsed manifest via __bloccs_manifest__/0.

Compile-time effect AST check

The macro walks the body of effect_shell after compilation finishes and emits a warning (not an error) for any ctx.effects.X.* access where X is not declared in [effects]. Promoting the warning to a hard compile error is post-v0.1 — for now the runtime capability struct backstops it.

Example

defmodule MyApp.Enrich do
  use Bloccs.Node, manifest: "nodes/enrich.bloccs"

  def transform(event, ctx), do: ...
  def execute(event, ctx), do: ...
end