Log inGet started
World

Builtin Library

Branchmain
Branchesmainpublish
Commitdd348ac6c3

README.md

procgen.describeNode

Describes one node in full, the way a graph calls it: the procgen counterpart of describe_tool. It reads what the node's source declares, without running it.

  • description: what it does.
  • inputs: in the order a call takes them, each with its type, default, range (min, max), options and description, whether it is optional, and plain = true on an input that is a build-time value: the node is built again for each value it is given, which is known when the calling graph is built or read off what the graph cooked before it, never animated or a per-element field.
  • outputs: each with its type, where the op or node that makes it states one. A node with one output gives that value; a node with several gives a table of them by name.
  • name, call and family: what a graph writes (g.points.disc), and the family it is listed under.
  • context, pulls, pushes: the space its work happens in, and what it reads from or writes to beside its sockets. A node written with proc.define states them in its .metadata, or its nodebox's .metadata states them for every node it holds.
  • callable and supersededBy: callable is false for a node built with g:node (the procNodes/ of the procgen package), which a graph built with proc.define does not call; its call is the g:node call a proc.graph graph writes, and supersededBy names the node written in the call form that a graph calls in its place.
  • cost and cache: what its declaration states about what it costs and how its result is kept.
  • readme: the node's README.

It takes one name: the name a graph calls (points.disc), a node's ~ path (~/fx/Strew), path or guid, or an op of a pack (op.geometry.bevel). procgen.searchNodes finds the names.

tools.use("procgen", "describeNode", "points.disc")

Part of procgen.toolbox, called as tools.use("procgen", "describeNode", ...) (zero procgen describeNode in the engine shell).