KaitaiToolkit.Ksy.Attribute (kaitai_toolkit v0.0.16)

Summary

Types

repeat()

@type repeat() :: :eos | :expr | :until

t()

@type t() :: %KaitaiToolkit.Ksy.Attribute{
  consume: boolean(),
  contents: binary(),
  doc: String.t(),
  doc_ref: [String.t()],
  encoding: String.t() | nil,
  enum: String.t() | nil,
  eos_error: boolean(),
  id: String.t(),
  if: {:expr, String.t()} | nil,
  include: boolean(),
  io: {:io_stream, String.t()},
  pad_right: non_neg_integer(),
  pos: non_neg_integer() | {:expr, String.t()} | nil,
  process:
    {:xor, binary()}
    | {:rol, non_neg_integer()}
    | {:ror, non_neg_integer()}
    | :zlib
    | {:custom_processor, {String.t(), [term()]}}
    | nil,
  repeat: repeat() | nil,
  repeat_expr: non_neg_integer() | {:expr, String.t()} | nil,
  repeat_until: {:expr, String.t()} | nil,
  size: non_neg_integer() | {:expr, String.t()} | nil,
  size_eos: term(),
  terminator: binary() | nil,
  type:
    KaitaiToolkit.Ksy.ScalarType.type_ref()
    | %{switch_on: term(), cases: [tuple()]},
  value: String.t()
}

Functions

from_map!(data)

@spec from_map!(map()) :: t()

with_parsed_expressions!(attr, ctx)

@spec with_parsed_expressions!(t(), ctx :: map()) :: t()