Search Shortcut cmd + k | ctrl + k
Search cmd+k ctrl+k
Dark Mode
1.1 (stable)
Struct Functions
Name Description
struct.entry Dot notation that serves as an alias for struct_extract from named STRUCTs.
struct[entry] Bracket notation that serves as an alias for struct_extract from named STRUCTs.
struct[idx] Bracket notation that serves as an alias for struct_extract from unnamed STRUCTs (tuples), using an index (1-based).
row(any, ...) Create an unnamed STRUCT (tuple) containing the argument values.
struct_extract(struct, 'entry') Extract the named entry from the STRUCT.
struct_extract(struct, idx) Extract the entry from an unnamed STRUCT (tuple) using an index (1-based).
struct_insert(struct, name := any, ...) Add field(s)/value(s) to an existing STRUCT with the argument values. The entry name(s) will be the bound variable name(s).
struct_pack(name := any, ...) Create a STRUCT containing the argument values. The entry name will be the bound variable name.

struct.entry

Description Dot notation that serves as an alias for struct_extract from named STRUCTs.
Example ({'i': 3, 's': 'string'}).i
Result 3

struct[entry]

Description Bracket notation that serves as an alias for struct_extract from named STRUCTs.
Example ({'i': 3, 's': 'string'})['i']
Result 3

struct[idx]

Description Bracket notation that serves as an alias for struct_extract from unnamed STRUCTs (tuples), using an index (1-based).
Example (row(42, 84))[1]
Result 42

row(any, ...)

Description Create an unnamed STRUCT (tuple) containing the argument values.
Example row(i, i % 4, i / 4)
Result (10, 2, 2.5)

struct_extract(struct, 'entry')

Description Extract the named entry from the STRUCT.
Example struct_extract({'i': 3, 'v2': 3, 'v3': 0}, 'i')
Result 3

struct_extract(struct, idx)

Description Extract the entry from an unnamed STRUCT (tuple) using an index (1-based).
Example struct_extract(row(42, 84), 1)
Result 42

struct_insert(struct, name := any, ...)

Description Add field(s)/value(s) to an existing STRUCT with the argument values. The entry name(s) will be the bound variable name(s).
Example struct_insert({'a': 1}, b := 2)
Result {'a': 1, 'b': 2}

struct_pack(name := any, ...)

Description Create a STRUCT containing the argument values. The entry name will be the bound variable name.
Example struct_pack(i := 4, s := 'string')
Result {'i': 4, 's': string}