Skip to content

functions_boolean.yaml

This document file is generated for functions_boolean.yaml

Scalar Functions

or

Implementations:
or(a): -> return_type
0. or(boolean?): -> boolean?

*The boolean or using Kleene logic. This function behaves as follows with nulls:

true or null = true

null or true = true

false or null = null

null or false = null

null or null = null

In other words, in this context a null value really means “unknown”, and an unknown value or true is always true. Behavior for 0 or 1 inputs is as follows: or() -> false or(x) -> x *

and

Implementations:
and(a): -> return_type
0. and(boolean?): -> boolean?

*The boolean and using Kleene logic. This function behaves as follows with nulls:

true and null = null

null and true = null

false and null = false

null and false = false

null and null = null

In other words, in this context a null value really means “unknown”, and an unknown value and false is always false. Behavior for 0 or 1 inputs is as follows: and() -> true and(x) -> x *

and_not

Implementations:
and_not(a, b): -> return_type
0. and_not(boolean?, boolean?): -> boolean?

*The boolean and of one value and the negation of the other using Kleene logic. This function behaves as follows with nulls:

true and not null = null

null and not false = null

false and not null = false

null and not true = false

null and not null = null

In other words, in this context a null value really means “unknown”, and an unknown value and not true is always false, as is false and not an unknown value. *

xor

Implementations:
xor(a, b): -> return_type
0. xor(boolean?, boolean?): -> boolean?

*The boolean xor of two values using Kleene logic. When a null is encountered in either input, a null is output. *

not

Implementations:
not(a): -> return_type
0. not(boolean?): -> boolean?

*The not of a boolean value. When a null is input, a null is output. *

Aggregate Functions

bool_and

Implementations:
bool_and(a): -> return_type
0. bool_and(boolean): -> boolean?

*If any value in the input is false, false is returned. If the input is empty or only contains nulls, null is returned. Otherwise, true is returned. *

bool_or

Implementations:
bool_or(a): -> return_type
0. bool_or(boolean): -> boolean?

*If any value in the input is true, true is returned. If the input is empty or only contains nulls, null is returned. Otherwise, false is returned. *