PtcRunner.Lisp.SpecialBuiltin (PtcRunner v0.14.0)

Copy Markdown View Source

Metadata for context-dispatched builtin values.

A {:special, name} binding needs evaluator context and therefore cannot be represented by an ordinary BEAM function. This catalog keeps value callability, higher-order dispatch, and pcalls zero-arity preflight in one place without owning any operation's implementation.

Summary

Types

dispatch()

@type dispatch() :: :direct | :println_bridge | :introspection | :parallel

pcalls_thunk()

@type pcalls_thunk() ::
  :zero
  | :unsupported
  | {:arity, pos_integer()}
  | {:minimum_arity, pos_integer()}

Functions

callable?(name)

@spec callable?(atom()) :: boolean()

callable_names()

@spec callable_names() :: [atom()]

names(dispatch)

@spec names(dispatch()) :: [atom()]

pcalls_thunk(name)

@spec pcalls_thunk(atom()) :: pcalls_thunk()