QuickBEAM.VM.Program (QuickBEAM v0.11.0)

View Source

Defines an immutable decoded JavaScript program.

bytecode_digest identifies the serialized QuickJS input. source_digest is also present when the public source compiler produced the program. The binary pin_key includes version, digest, and filename identity so bounded pinned storage never derives atoms from input.

The fields are an advanced, version-locked decoded representation, not a construction API. Obtain valid values through QuickBEAM.VM.compile/2 or QuickBEAM.VM.decode/2; changing fields invalidates verification guarantees.

Summary

Types

t()

@type t() :: %QuickBEAM.VM.Program{
  atoms: tuple(),
  bytecode_digest: binary() | nil,
  bytecode_size: non_neg_integer() | nil,
  fingerprint: String.t(),
  pin_key: binary() | nil,
  root: QuickBEAM.VM.Program.Function.t(),
  source_digest: binary() | nil,
  version: non_neg_integer()
}