Figler.Scene.Graph.Provenance (figler v0.1.0-beta.1)

Copy Markdown View Source

Builds and updates provenance metadata for resolved graph nodes.

Provenance records explain whether a node came directly from the projected index or was cloned from a component while resolving an instance.

Summary

Functions

Returns the initial provenance map.

Records provenance for a node cloned while resolving an instance.

Functions

initial()

@spec initial() :: %{optional(term()) => map()}

Returns the initial provenance map.

Projected seed provenance is derivable from the node GUID, so the graph keeps this map sparse and records only clone/patch/variable entries that differ from the default projected-index provenance.

initial(seed_nodes)

@spec initial([term()]) :: %{optional(term()) => map()}

put_clone(graph, clone_guid, source_guid, instance_guid, component_guid)

@spec put_clone(Figler.Scene.Graph.t(), term(), term(), term(), term()) ::
  Figler.Scene.Graph.t()

Records provenance for a node cloned while resolving an instance.