Skip to main content
Version: v1.16.0



kind return a value's type category


kind(val: any) -> string


The kind function returns the category of the type of v as a string, e.g., "record", "set", "primitive", etc. If v is a type value, then the type category of the referenced type is returned.


A primitive value's kind is "primitive":

echo '1 "a"' | zq -z 'yield kind(this)' -



A complex value's kind is it's complex type category. Try it on these empty values of various complex types:

echo '{} [] |[]| |{}| 1((int64,string))' | zq -z 'yield kind(this)' -



A Zed error has kind "error":

echo null | zq -z 'yield kind(1/0)' -



A Zed type's kind is the kind of the type:

echo '<{s:string}>' | zq -z 'yield kind(this)' -