substrait-extensions 0.99.0

Packaged Substrait Extension Files
Documentation
### SUBSTRAIT_SCALAR_TEST: v1.0
### SUBSTRAIT_INCLUDE: extension:io.substrait:functions_list
### SUBSTRAIT_DEPENDENCY: extension:io.substrait:functions_comparison

# returns_true: All elements match the predicate
all_match([1, 2, 3]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>) = true::bool?
all_match([5, 6, 7]::list<i32>, (x -> gt(x, 4::i32))::func<i32 -> bool?>) = true::bool?

# returns_false: At least one element fails the predicate
all_match([1, 2, 3]::list<i32>, (x -> gt(x, 2::i32))::func<i32 -> bool?>) = false::bool?
all_match([1, 2, 3]::list<i32>, (x -> lt(x, 3::i32))::func<i32 -> bool?>) = false::bool?

# empty: Empty list returns true (vacuously true)
all_match([]::list<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>) = true::bool?

# null_list: Null list input returns null
all_match(null::list?<i32>, (x -> gt(x, 0::i32))::func<i32 -> bool?>) = null::bool?

# null_predicate: Null predicate returns null
all_match([1, 2, 3]::list<i32>, null::func?<i32 -> bool?>) = null::bool?

# three_valued_logic: Null predicate results follow three-valued logic
all_match([1, Null, 2]::list<i32?>, (x -> gt(x, 0::i32))::func<i32? -> bool?>) = Null::bool?
all_match([1, Null, 0]::list<i32?>, (x -> gt(x, 0::i32))::func<i32? -> bool?>) = false::bool?