term.h

Include dependency graph for term.h:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "2" [label="stdbool.h" tooltip="stdbool.h"]
    "18" [label="stdatomic.h" tooltip="stdatomic.h"]
    "3" [label="stdint.h" tooltip="stdint.h"]
    "5" [label="stdlib.h" tooltip="stdlib.h"]
    "12" [label="utils.h" tooltip="utils.h"]
    "9" [label="term_typedef.h" tooltip="term_typedef.h"]
    "13" [label="stddef.h" tooltip="stddef.h"]
    "10" [label="limits.h" tooltip="limits.h"]
    "14" [label="refc_binary.h" tooltip="refc_binary.h"]
    "6" [label="string.h" tooltip="string.h"]
    "1" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.h" fillcolor="#BFBFBF"]
    "8" [label="erl_nif.h" tooltip="erl_nif.h"]
    "16" [label="resources.h" tooltip="resources.h"]
    "17" [label="smp.h" tooltip="smp.h"]
    "7" [label="memory.h" tooltip="memory.h"]
    "4" [label="stdio.h" tooltip="stdio.h"]
    "15" [label="list.h" tooltip="list.h"]
    "11" [label="inttypes.h" tooltip="inttypes.h"]
    "12" -> "13" [dir=forward tooltip="include"]
    "9" -> "10" [dir=forward tooltip="include"]
    "9" -> "11" [dir=forward tooltip="include"]
    "9" -> "3" [dir=forward tooltip="include"]
    "14" -> "2" [dir=forward tooltip="include"]
    "14" -> "5" [dir=forward tooltip="include"]
    "14" -> "15" [dir=forward tooltip="include"]
    "14" -> "16" [dir=forward tooltip="include"]
    "14" -> "17" [dir=forward tooltip="include"]
    "1" -> "2" [dir=forward tooltip="include"]
    "1" -> "3" [dir=forward tooltip="include"]
    "1" -> "4" [dir=forward tooltip="include"]
    "1" -> "5" [dir=forward tooltip="include"]
    "1" -> "6" [dir=forward tooltip="include"]
    "1" -> "7" [dir=forward tooltip="include"]
    "1" -> "14" [dir=forward tooltip="include"]
    "1" -> "12" [dir=forward tooltip="include"]
    "1" -> "9" [dir=forward tooltip="include"]
    "8" -> "9" [dir=forward tooltip="include"]
    "16" -> "5" [dir=forward tooltip="include"]
    "16" -> "8" [dir=forward tooltip="include"]
    "16" -> "15" [dir=forward tooltip="include"]
    "17" -> "2" [dir=forward tooltip="include"]
    "17" -> "18" [dir=forward tooltip="include"]
    "7" -> "8" [dir=forward tooltip="include"]
    "7" -> "9" [dir=forward tooltip="include"]
    "7" -> "12" [dir=forward tooltip="include"]
    "7" -> "3" [dir=forward tooltip="include"]
    "7" -> "5" [dir=forward tooltip="include"]
}

This graph shows which files directly or indirectly include term.h:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "10" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bif.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bif.c"]
    "34" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/dictionary.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/dictionary.c"]
    "9" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bif.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bif.h"]
    "35" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/dictionary.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/dictionary.h"]
    "3" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bitstring.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bitstring.c"]
    "2" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bitstring.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/bitstring.h"]
    "25" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/platform_nifs.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/platform_nifs.h"]
    "18" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/posix_nifs.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/posix_nifs.c"]
    "37" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/posix_nifs.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/posix_nifs.h"]
    "43" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/defaultatoms.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/defaultatoms.c"]
    "42" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/defaultatoms.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/defaultatoms.h"]
    "15" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/scheduler.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/scheduler.c"]
    "32" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/scheduler.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/scheduler.h"]
    "36" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/exportedfunction.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/exportedfunction.h"]
    "6" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/context.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/context.c"]
    "8" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/context.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/context.h"]
    "30" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/port.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/port.c"]
    "31" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/port.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/port.h"]
    "44" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/overflow_helpers.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/overflow_helpers.h"]
    "27" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/stacktrace.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/stacktrace.c"]
    "26" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/stacktrace.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/stacktrace.h"]
    "19" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/refc_binary.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/refc_binary.c"]
    "33" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/mailbox.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/mailbox.c"]
    "7" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/module.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/module.c"]
    "24" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/module.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/module.h"]
    "41" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/avmpack.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/avmpack.c"]
    "40" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/avmpack.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/avmpack.h"]
    "23" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.c"]
    "1" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/term.h" fillcolor="#BFBFBF"]
    "4" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/interop.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/interop.c"]
    "22" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/interop.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/interop.h"]
    "20" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/resources.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/resources.c"]
    "16" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/erl_nif_priv.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/erl_nif_priv.h"]
    "28" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/sys.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/sys.h"]
    "11" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/nifs.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/nifs.c"]
    "29" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/nifs.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/nifs.h"]
    "5" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/opcodesswitch.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/opcodesswitch.h"]
    "13" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/debug.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/debug.c"]
    "12" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/debug.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/debug.h"]
    "17" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/globalcontext.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/globalcontext.c"]
    "39" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/globalcontext.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/globalcontext.h"]
    "14" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/memory.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/memory.c"]
    "21" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/externalterm.c" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/externalterm.c"]
    "38" [label="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/externalterm.h" tooltip="/home/runner/work/AtomVM/AtomVM/src/libAtomVM/externalterm.h"]
    "9" -> "10" [dir=back tooltip="include"]
    "9" -> "7" [dir=back tooltip="include"]
    "9" -> "11" [dir=back tooltip="include"]
    "9" -> "5" [dir=back tooltip="include"]
    "35" -> "10" [dir=back tooltip="include"]
    "35" -> "6" [dir=back tooltip="include"]
    "35" -> "34" [dir=back tooltip="include"]
    "35" -> "14" [dir=back tooltip="include"]
    "35" -> "11" [dir=back tooltip="include"]
    "35" -> "19" [dir=back tooltip="include"]
    "2" -> "3" [dir=back tooltip="include"]
    "2" -> "4" [dir=back tooltip="include"]
    "2" -> "5" [dir=back tooltip="include"]
    "25" -> "11" [dir=back tooltip="include"]
    "37" -> "17" [dir=back tooltip="include"]
    "37" -> "11" [dir=back tooltip="include"]
    "37" -> "18" [dir=back tooltip="include"]
    "42" -> "10" [dir=back tooltip="include"]
    "42" -> "43" [dir=back tooltip="include"]
    "42" -> "34" [dir=back tooltip="include"]
    "42" -> "17" [dir=back tooltip="include"]
    "42" -> "4" [dir=back tooltip="include"]
    "42" -> "11" [dir=back tooltip="include"]
    "42" -> "5" [dir=back tooltip="include"]
    "42" -> "30" [dir=back tooltip="include"]
    "42" -> "31" [dir=back tooltip="include"]
    "42" -> "18" [dir=back tooltip="include"]
    "42" -> "20" [dir=back tooltip="include"]
    "42" -> "27" [dir=back tooltip="include"]
    "32" -> "33" [dir=back tooltip="include"]
    "32" -> "11" [dir=back tooltip="include"]
    "32" -> "5" [dir=back tooltip="include"]
    "32" -> "15" [dir=back tooltip="include"]
    "36" -> "9" [dir=back tooltip="include"]
    "36" -> "24" [dir=back tooltip="include"]
    "36" -> "29" [dir=back tooltip="include"]
    "36" -> "5" [dir=back tooltip="include"]
    "36" -> "25" [dir=back tooltip="include"]
    "36" -> "37" [dir=back tooltip="include"]
    "8" -> "9" [dir=back tooltip="include"]
    "8" -> "6" [dir=back tooltip="include"]
    "8" -> "12" [dir=back tooltip="include"]
    "8" -> "16" [dir=back tooltip="include"]
    "8" -> "21" [dir=back tooltip="include"]
    "8" -> "17" [dir=back tooltip="include"]
    "8" -> "22" [dir=back tooltip="include"]
    "8" -> "14" [dir=back tooltip="include"]
    "8" -> "7" [dir=back tooltip="include"]
    "8" -> "24" [dir=back tooltip="include"]
    "8" -> "11" [dir=back tooltip="include"]
    "8" -> "29" [dir=back tooltip="include"]
    "8" -> "30" [dir=back tooltip="include"]
    "8" -> "31" [dir=back tooltip="include"]
    "8" -> "19" [dir=back tooltip="include"]
    "8" -> "20" [dir=back tooltip="include"]
    "8" -> "32" [dir=back tooltip="include"]
    "8" -> "26" [dir=back tooltip="include"]
    "8" -> "23" [dir=back tooltip="include"]
    "31" -> "11" [dir=back tooltip="include"]
    "31" -> "30" [dir=back tooltip="include"]
    "44" -> "10" [dir=back tooltip="include"]
    "26" -> "5" [dir=back tooltip="include"]
    "26" -> "27" [dir=back tooltip="include"]
    "24" -> "9" [dir=back tooltip="include"]
    "24" -> "7" [dir=back tooltip="include"]
    "24" -> "11" [dir=back tooltip="include"]
    "24" -> "5" [dir=back tooltip="include"]
    "24" -> "25" [dir=back tooltip="include"]
    "24" -> "26" [dir=back tooltip="include"]
    "24" -> "28" [dir=back tooltip="include"]
    "40" -> "41" [dir=back tooltip="include"]
    "40" -> "17" [dir=back tooltip="include"]
    "40" -> "11" [dir=back tooltip="include"]
    "1" -> "2" [dir=back tooltip="include"]
    "1" -> "6" [dir=back tooltip="include"]
    "1" -> "8" [dir=back tooltip="include"]
    "1" -> "34" [dir=back tooltip="include"]
    "1" -> "35" [dir=back tooltip="include"]
    "1" -> "36" [dir=back tooltip="include"]
    "1" -> "38" [dir=back tooltip="include"]
    "1" -> "39" [dir=back tooltip="include"]
    "1" -> "4" [dir=back tooltip="include"]
    "1" -> "22" [dir=back tooltip="include"]
    "1" -> "14" [dir=back tooltip="include"]
    "1" -> "7" [dir=back tooltip="include"]
    "1" -> "24" [dir=back tooltip="include"]
    "1" -> "11" [dir=back tooltip="include"]
    "1" -> "44" [dir=back tooltip="include"]
    "1" -> "31" [dir=back tooltip="include"]
    "1" -> "37" [dir=back tooltip="include"]
    "1" -> "26" [dir=back tooltip="include"]
    "1" -> "23" [dir=back tooltip="include"]
    "22" -> "4" [dir=back tooltip="include"]
    "22" -> "11" [dir=back tooltip="include"]
    "22" -> "18" [dir=back tooltip="include"]
    "22" -> "23" [dir=back tooltip="include"]
    "16" -> "6" [dir=back tooltip="include"]
    "16" -> "17" [dir=back tooltip="include"]
    "16" -> "14" [dir=back tooltip="include"]
    "16" -> "18" [dir=back tooltip="include"]
    "16" -> "19" [dir=back tooltip="include"]
    "16" -> "20" [dir=back tooltip="include"]
    "28" -> "6" [dir=back tooltip="include"]
    "28" -> "17" [dir=back tooltip="include"]
    "28" -> "7" [dir=back tooltip="include"]
    "28" -> "11" [dir=back tooltip="include"]
    "28" -> "20" [dir=back tooltip="include"]
    "28" -> "15" [dir=back tooltip="include"]
    "29" -> "7" [dir=back tooltip="include"]
    "29" -> "11" [dir=back tooltip="include"]
    "29" -> "5" [dir=back tooltip="include"]
    "29" -> "18" [dir=back tooltip="include"]
    "5" -> "6" [dir=back tooltip="include"]
    "5" -> "7" [dir=back tooltip="include"]
    "12" -> "13" [dir=back tooltip="include"]
    "12" -> "14" [dir=back tooltip="include"]
    "12" -> "5" [dir=back tooltip="include"]
    "12" -> "15" [dir=back tooltip="include"]
    "39" -> "40" [dir=back tooltip="include"]
    "39" -> "6" [dir=back tooltip="include"]
    "39" -> "8" [dir=back tooltip="include"]
    "39" -> "42" [dir=back tooltip="include"]
    "39" -> "17" [dir=back tooltip="include"]
    "39" -> "7" [dir=back tooltip="include"]
    "39" -> "24" [dir=back tooltip="include"]
    "39" -> "11" [dir=back tooltip="include"]
    "39" -> "30" [dir=back tooltip="include"]
    "39" -> "31" [dir=back tooltip="include"]
    "39" -> "18" [dir=back tooltip="include"]
    "39" -> "37" [dir=back tooltip="include"]
    "39" -> "32" [dir=back tooltip="include"]
    "39" -> "27" [dir=back tooltip="include"]
    "39" -> "28" [dir=back tooltip="include"]
    "38" -> "21" [dir=back tooltip="include"]
    "38" -> "7" [dir=back tooltip="include"]
    "38" -> "11" [dir=back tooltip="include"]
}

Defines

TERM_BOXED_VALUE_TAG
TERM_INTEGER_TAG
TERM_CATCH_TAG
TERM_BOXED_TAG_MASK
TERM_BOXED_TUPLE
TERM_BOXED_BIN_MATCH_STATE
TERM_BOXED_POSITIVE_INTEGER
TERM_BOXED_REF
TERM_BOXED_FUN
TERM_BOXED_FLOAT
TERM_BOXED_REFC_BINARY
TERM_BOXED_HEAP_BINARY
TERM_BOXED_MAP
TERM_BOXED_SUB_BINARY
TERM_UNUSED
TERM_RESERVED_MARKER(x)
TERM_BOXED_REFC_BINARY_SIZE
TERM_BOXED_BIN_MATCH_STATE_SIZE
TERM_BOXED_SUB_BINARY_SIZE
TERM_BOXED_RESOURCE_SIZE
REFC_BINARY_MIN
SUB_BINARY_MIN
BINARY_HEADER_SIZE
FUNCTION_REFERENCE_SIZE
BOXED_INT_SIZE
BOXED_INT64_SIZE
BOXED_FUN_SIZE
FLOAT_SIZE
REF_SIZE
TUPLE_SIZE(elems)
CONS_SIZE
REFC_BINARY_CONS_OFFSET
TERM_BINARY_SIZE_IS_HEAP(size)
TERM_BINARY_DATA_SIZE_IN_TERMS(size)
TERM_BINARY_HEAP_SIZE(size)
TERM_DEBUG_ASSERT(...)
TERM_FROM_ATOM_INDEX(atom_index)
TERM_MAP_NOT_FOUND
TERM_MAP_MEMORY_ALLOC_FAIL

Typedefs

typedef struct PrinterFun PrinterFun
int(* printer_function_t )(PrinterFun *fun, const char *fmt,...) PRINTF_FORMAT_ARGS(2

Enums

enum RefcBinaryFlags

Values:

enumerator RefcNoFlags
enumerator RefcBinaryIsConst
enum TermCompareOpts

Values:

enumerator TermCompareNoOpts
enumerator TermCompareExact
enum TermCompareResult

Values:

enumerator TermCompareMemoryAllocFail
enumerator TermEquals
enumerator TermLessThan
enumerator TermGreaterThan

Functions

TermCompareResult term_compare(term t, term other, TermCompareOpts opts, GlobalContext *global)
term term_alloc_refc_binary(size_t size, bool is_const, Heap *heap, GlobalContext *glb)
term term_alloc_sub_binary(term binary, size_t offset, size_t len, Heap *heap)
static inline term *term_to_term_ptr(term t)
static inline const term *term_to_const_term_ptr(term t)
static inline int term_is_atom(term t)
static inline int term_is_invalid_term(term t)
static inline int term_is_nil(term t)
static inline int term_is_nonempty_list(term t)
static inline int term_is_list(term t)
static inline int term_is_boxed(term t)
static inline int term_is_movable_boxed(term t)
static inline int term_get_size_from_boxed_header(term header)
static inline int term_boxed_size(term t)
static inline int term_is_binary(term t)
static inline bool term_is_refc_binary(term t)
static inline bool term_refc_binary_is_const(term t)
static inline bool term_is_sub_binary(term t)
static inline int term_is_integer(term t)
static inline uint8_t term_is_uint8(term t)
static inline int term_is_boxed_integer(term t)
static inline int term_is_any_integer(term t)
static inline int term_is_catch_label(term t)
static inline int term_is_pid(term t)
static inline int term_is_tuple(term t)
static inline int term_is_reference(term t)
static inline int term_is_function(term t)
static inline int term_is_cp(term t)
static inline term term_invalid_term()
static inline term term_nil()
static inline int term_to_atom_index(term t)
static inline term term_from_atom_index(int atom_index)
static inline uint8_t term_to_uint8(term t)
static inline int32_t term_to_int32(term t)
static inline avm_int_t term_to_int(term t)
static inline int term_to_catch_label_and_module(term t, int *module_index)
static inline int32_t term_to_local_process_id(term t)
static inline term term_from_int4(int8_t value)
static inline term term_from_int11(int16_t value)
static inline term term_from_int32(int32_t value)
static inline term term_from_int64(int64_t value)
static inline term term_from_int(avm_int_t value)
static inline avm_int_t term_unbox_int(term boxed_int)
static inline avm_int64_t term_unbox_int64(term boxed_long)
static inline avm_int_t term_maybe_unbox_int(term maybe_boxed_int)
static inline avm_int64_t term_maybe_unbox_int64(term maybe_boxed_int)
static inline term term_make_boxed_int(avm_int_t value, Heap *heap)
static inline term term_make_boxed_int64(avm_int64_t large_int64, Heap *heap)
static inline term term_make_maybe_boxed_int64(avm_int64_t value, Heap *heap)
static inline size_t term_boxed_integer_size(avm_int64_t value)
static inline term term_from_catch_label(unsigned int module_index, unsigned int label)
static inline term term_from_local_process_id(uint32_t local_process_id)
static inline bool term_binary_size_is_heap_binary(uint32_t size)
static inline int term_binary_data_size_in_terms(uint32_t size)
static inline int term_binary_heap_size(uint32_t size)
static inline unsigned long term_binary_size(term t)
static inline void *term_refc_binary_ptr(term refc_binary)
static inline const char *term_binary_data(term t)
static inline term term_create_uninitialized_binary(uint32_t size, Heap *heap, GlobalContext *glb)
static inline term term_from_literal_binary(const void *data, uint32_t size, Heap *heap, GlobalContext *glb)
static inline size_t term_sub_binary_heap_size(term binary, size_t len)
static inline term term_maybe_create_sub_binary(term binary, size_t offset, size_t len, Heap *heap, GlobalContext *glb)
static inline void term_set_refc_binary_data(term t, const void *data)
static inline term term_from_const_binary(const void *data, uint32_t size, Heap *heap, GlobalContext *glb)
static inline term term_create_empty_binary(uint32_t size, Heap *heap, GlobalContext *glb)
static inline int term_bs_insert_binary(term t, int offset, term src, int n)
static inline term term_from_ref_ticks(uint64_t ref_ticks, Heap *heap)
static inline uint64_t term_to_ref_ticks(term rt)
static inline term term_alloc_tuple(uint32_t size, Heap *heap)
static inline void term_put_tuple_element(term t, uint32_t elem_index, term put_value)
static inline term term_get_tuple_element(term t, int elem_index)
static inline int term_get_tuple_arity(term t)
static inline term term_from_string(const uint8_t *data, uint16_t size, Heap *heap)
static inline term *term_get_list_ptr(term t)
static inline term term_list_from_list_ptr(term *list_elem)
static inline term term_get_list_head(term t)
static inline term term_get_list_tail(term t)
static inline MALLOC_LIKE term * term_list_alloc (Heap *heap)
static inline term term_list_init_prepend(term *list_elem, term head, term tail)
static inline term term_list_prepend(term head, term tail, Heap *heap)
static inline int term_list_length(term t, int *proper)
static inline int term_is_float(term t)
static inline term term_from_float(avm_float_t f, Heap *heap)
static inline avm_float_t term_to_float(term t)
static inline avm_float_t term_conv_to_float(term t)
static inline int term_is_number(term t)
void term_display(FILE *fd, term t, const Context *ctx)
int term_funprint(PrinterFun *pf, term t, const GlobalContext *global)
int term_fprint(FILE *fd, term t, const GlobalContext *global)
int term_snprint(char *buf, size_t size, term t, const GlobalContext *global)
static inline int term_is_string(term t)
static inline term term_make_function_reference(term m, term f, term a, Heap *heap)
static inline int term_is_match_state(term t)
static inline term term_get_match_state_binary(term match_state)
static inline avm_int_t term_get_match_state_offset(term match_state)
static inline void term_set_match_state_offset(term match_state, avm_int_t offset)
static inline void term_match_state_save_offset(term match_state, int index)
static inline void term_match_state_save_start_offset(term match_state)
static inline void term_match_state_restore_start_offset(term match_state)
static inline void term_match_state_restore_offset(term match_state, int index)
static inline term term_alloc_bin_match_state(term binary_or_state, int slots, Heap *heap)
static inline int term_is_map(term t)
static inline size_t term_get_map_keys_offset()
static inline size_t term_get_map_value_offset()
static inline int term_map_size_in_terms_maybe_shared(size_t num_entries, bool is_shared)
static inline int term_map_size_in_terms(size_t num_entries)
static inline term term_alloc_map_maybe_shared(avm_uint_t size, term keys, Heap *heap)
static inline term term_alloc_map(avm_uint_t size, Heap *heap)
static inline term term_get_map_keys(term t)
static inline int term_get_map_size(term t)
static inline void term_set_map_assoc(term map, avm_uint_t pos, term key, term value)
static inline term term_get_map_key(term map, avm_uint_t pos)
static inline term term_get_map_value(term map, avm_uint_t pos)
static inline int term_find_map_pos(term map, term key, GlobalContext *global)
term term_get_map_assoc(term map, term key, GlobalContext *glb)
static inline term term_get_map_assoc_default(term map, term key, term default_value, GlobalContext *glb)
static inline term term_get_sub_binary_ref(term t)
static inline term term_from_resource(void *resource, Heap *heap)

Variables

const term empty_tuple
struct PrinterFun

Collaboration diagram for PrinterFun:

digraph {
    graph [bgcolor="#00000000"]
    node [shape=rectangle style=filled fillcolor="#FFFFFF" font=Helvetica padding=2]
    edge [color="#1414CE"]
    "1" [label="PrinterFun" tooltip="PrinterFun" fillcolor="#BFBFBF"]
    "1" -> "1" [dir=forward tooltip="usage"]
}

Public Members

printer_function_t print