unsigned_integers.yaml¶
This document file is generated for unsigned_integers.yaml. The extension URN is extension:io.substrait:unsigned_integers.
Data Types¶
name: u8 description: Unsigned 8-bit integer (0 to 255). Values are encoded as decimal strings in the structure representation.
structure: {‘value’: ‘string’} name: u16 description: Unsigned 16-bit integer (0 to 65535). Values are encoded as decimal strings in the structure representation.
structure: {‘value’: ‘string’} name: u32 description: Unsigned 32-bit integer (0 to 4294967295). Values are encoded as decimal strings in the structure representation.
structure: {‘value’: ‘string’} name: u64 description: Unsigned 64-bit integer (0 to 18446744073709551615). Values are encoded as decimal strings in the structure representation.
structure: {‘value’: ‘string’}
Scalar Functions¶
add¶
Add two unsigned integer values.
Implementations:
- add(
x: u!u8,y: u!u8,option:overflow): ->u!u8 - add(
x: u!u16,y: u!u16,option:overflow): ->u!u16 - add(
x: u!u32,y: u!u32,option:overflow): ->u!u32 - add(
x: u!u64,y: u!u64,option:overflow): ->u!u64
Options:
subtract¶
Subtract one unsigned integer value from another.
Implementations:
- subtract(
x: u!u8,y: u!u8,option:overflow): ->u!u8 - subtract(
x: u!u16,y: u!u16,option:overflow): ->u!u16 - subtract(
x: u!u32,y: u!u32,option:overflow): ->u!u32 - subtract(
x: u!u64,y: u!u64,option:overflow): ->u!u64
Options:
multiply¶
Multiply two unsigned integer values.
Implementations:
- multiply(
x: u!u8,y: u!u8,option:overflow): ->u!u8 - multiply(
x: u!u16,y: u!u16,option:overflow): ->u!u16 - multiply(
x: u!u32,y: u!u32,option:overflow): ->u!u32 - multiply(
x: u!u64,y: u!u64,option:overflow): ->u!u64
Options:
divide¶
Divide x by y. Partial values are truncated (i.e. rounded towards 0). The on_division_by_zero option governs behavior in cases where y is 0. If either x or y are out of range, behavior will be governed by on_domain_error.
Implementations:
- divide(
x: u!u8,y: u!u8,option:on_domain_error,option:on_division_by_zero): ->u!u8 - divide(
x: u!u16,y: u!u16,option:on_domain_error,option:on_division_by_zero): ->u!u16 - divide(
x: u!u32,y: u!u32,option:on_domain_error,option:on_division_by_zero): ->u!u32 - divide(
x: u!u64,y: u!u64,option:on_domain_error,option:on_division_by_zero): ->u!u64
Options:
Aggregate Functions¶
sum¶
Sum a set of unsigned integer values. The sum of zero elements yields null.
Implementations:
- sum(
x: u!u8,option:overflow): ->u!u64? - sum(
x: u!u16,option:overflow): ->u!u64? - sum(
x: u!u32,option:overflow): ->u!u64? - sum(
x: u!u64,option:overflow): ->u!u64?
Options:
min¶
Min of a set of unsigned integer values.
Implementations:
- min(
x: u!u8): ->u!u8? - min(
x: u!u16): ->u!u16? - min(
x: u!u32): ->u!u32? - min(
x: u!u64): ->u!u64?
max¶
Max of a set of unsigned integer values.
Implementations:
- max(
x: u!u8): ->u!u8? - max(
x: u!u16): ->u!u16? - max(
x: u!u32): ->u!u32? - max(
x: u!u64): ->u!u64?