Functions appear in expression context and take Zed values as arguments and produce a value as a result. In addition to the built-in functions listed below, Zed also allows for the creation of user-defined functions.
A function-style syntax is also available for converting values to each of
Zed's primitive types, e.g.,
uint8()
, time()
, etc. For details and examples, read about the
cast
function and how it is used in expressions.
- abs - absolute value of a number
- base64 - encode/decode base64 strings
- bucket - quantize a time or duration value into buckets of equal widths
- cast - coerce a value to a different type
- ceil - ceiling of a number
- cidr_match - test if IP is in a network
- compare - return an int comparing two values
- coalesce - return first value that is not null, a "missing" error, or a "quiet" error
- crop - remove fields from a value that are missing in a specified type
- error - wrap a value as an error
- every - bucket
ts
using a duration - fields - return the flattened path names of a record
- fill - add null values for missing record fields
- flatten - transform a record into a flattened map
- floor - floor of a number
- grep - search strings inside of values
- grok - parse a string into a structured record
- has - test existence of values
- hex - encode/decode hexadecimal strings
- has_error - test if a value has an error
- is - test a value's type
- is_error - test if a value is an error
- join - concatenate array of strings with a separator
- kind - return a value's type category
- ksuid - encode/decode KSUID-style unique identifiers
- len - the type-dependent length of a value
- levenshtein Levenshtein distance
- log - natural logarithm
- lower - convert a string to lower case
- map - apply a function to each element of an array or set
- missing - test for the "missing" error
- nameof - the name of a named type
- nest_dotted - transform fields in a record with dotted names to nested records
- network_of - the network of an IP
- now - the current time
- order - reorder record fields
- parse_uri - parse a string URI into a structured record
- parse_zson - parse ZSON text into a Zed value
- pow - exponential function of any base
- quiet - quiet "missing" errors
- regexp - perform a regular expression search on a string
- regexp_replace - replace regular expression matches in a string
- replace - replace one string for another
- round - round a number
- rune_len - length of a string in Unicode code points
- shape - apply cast, fill, and order
- split - slice a string into an array of strings
- sqrt - square root of a number
- strftime - format time values
- trim - strip leading and trailing whitespace
- typename - look up and return a named type
- typeof - the type of a value
- typeunder - the underlying type of a value
- under - the underlying value
- unflatten - transform a record with dotted names to a nested record
- upper - convert a string to upper case