radixdb_plugin_abi/
constants.rs1pub type RadixAbiStatusV1 = u32;
4
5pub const RADIX_ABI_MAJOR: u16 = 1;
6pub const RADIX_ABI_MINOR: u16 = 0;
7
8pub const RADIX_STATUS_OK: RadixAbiStatusV1 = 0;
9pub const RADIX_STATUS_INVALID_ARGUMENT: RadixAbiStatusV1 = 1;
10pub const RADIX_STATUS_DOMAIN_ERROR: RadixAbiStatusV1 = 2;
11pub const RADIX_STATUS_LIMIT_EXCEEDED: RadixAbiStatusV1 = 3;
12pub const RADIX_STATUS_CANCELLED: RadixAbiStatusV1 = 4;
13pub const RADIX_STATUS_INTERNAL_ERROR: RadixAbiStatusV1 = 5;
14pub const RADIX_STATUS_PANIC: RadixAbiStatusV1 = 6;
15pub const RADIX_STATUS_UNSUPPORTED_ABI: RadixAbiStatusV1 = 7;
16pub const RADIX_STATUS_CONTRACT_VIOLATION: RadixAbiStatusV1 = 8;
17pub const RADIX_STATUS_DEPENDENCY_MISSING: RadixAbiStatusV1 = 9;
18
19pub const RADIX_DIAGNOSTIC_INVALID_INPUT: u32 = 1;
20pub const RADIX_DIAGNOSTIC_DOMAIN: u32 = 2;
21pub const RADIX_DIAGNOSTIC_LIMIT: u32 = 3;
22pub const RADIX_DIAGNOSTIC_CANCELLED: u32 = 4;
23pub const RADIX_DIAGNOSTIC_INTERNAL: u32 = 5;
24pub const RADIX_DIAGNOSTIC_PLUGIN_PANIC: u32 = 6;
25pub const RADIX_DIAGNOSTIC_ABI_CONTRACT: u32 = 7;
26pub const RADIX_DIAGNOSTIC_DEPENDENCY: u32 = 8;
27
28pub const RADIX_DESCRIPTOR_EXTERNAL_TYPE: u16 = 1;
29pub const RADIX_DESCRIPTOR_SCALAR_FUNCTION: u16 = 2;
30pub const RADIX_DESCRIPTOR_OPERATOR: u16 = 3;
31pub const RADIX_DESCRIPTOR_OPERATOR_CLASS: u16 = 4;
32pub const RADIX_DESCRIPTOR_PLANNER_SUPPORT: u16 = 5;
33
34pub const RADIX_TYPE_REF_BUILTIN: u16 = 1;
35pub const RADIX_TYPE_REF_EXTERNAL: u16 = 2;
36pub const RADIX_EXTERNAL_STORAGE_FIXED: u16 = 1;
37pub const RADIX_EXTERNAL_STORAGE_VARIABLE: u16 = 2;
38
39pub const RADIX_COLUMN_LAYOUT_FIXED: u16 = 1;
40pub const RADIX_COLUMN_LAYOUT_VARIABLE: u16 = 2;
41
42pub const RADIX_VOLATILITY_IMMUTABLE: u16 = 1;
43pub const RADIX_VOLATILITY_STABLE: u16 = 2;
44pub const RADIX_VOLATILITY_VOLATILE: u16 = 3;
45pub const RADIX_CANCELLATION_BOUNDED: u16 = 1;
46pub const RADIX_RECHECK_EXACT: u16 = 1;
47pub const RADIX_RECHECK_ALWAYS: u16 = 2;
48
49pub const RADIX_ACCESS_METHOD_BTREE: u16 = 1;
50pub const RADIX_ACCESS_METHOD_HASH: u16 = 2;
51pub const RADIX_ACCESS_METHOD_BITMAP: u16 = 3;
52pub const RADIX_ACCESS_METHOD_HNSW: u16 = 4;
53
54pub const RADIX_LOG_INFO: u16 = 1;
55pub const RADIX_LOG_WARN: u16 = 2;
56pub const RADIX_LOG_ERROR: u16 = 3;
57pub const RADIX_LOG_DEBUG: u16 = 4;
58
59pub const RADIX_PACKAGE_CAP_EXTERNAL_TYPES: u64 = 1 << 0;
60pub const RADIX_PACKAGE_CAP_SCALAR_FUNCTIONS: u64 = 1 << 1;
61pub const RADIX_PACKAGE_CAP_BATCH_FUNCTIONS: u64 = 1 << 2;
62pub const RADIX_PACKAGE_CAP_OPERATORS: u64 = 1 << 3;
63pub const RADIX_PACKAGE_CAP_OPERATOR_CLASSES: u64 = 1 << 4;
64pub const RADIX_PACKAGE_CAP_PLANNER_SUPPORT: u64 = 1 << 5;
65pub const RADIX_PACKAGE_CAP_ALL: u64 = (1 << 6) - 1;
66
67pub const RADIX_TYPE_CAP_EQUALITY: u64 = 1 << 0;
68pub const RADIX_TYPE_CAP_HASH: u64 = 1 << 1;
69pub const RADIX_TYPE_CAP_ORDERING: u64 = 1 << 2;
70pub const RADIX_TYPE_CAP_TEXT_INPUT: u64 = 1 << 3;
71pub const RADIX_TYPE_CAP_TEXT_OUTPUT: u64 = 1 << 4;
72pub const RADIX_TYPE_CAP_BINARY_INPUT: u64 = 1 << 5;
73pub const RADIX_TYPE_CAP_BINARY_OUTPUT: u64 = 1 << 6;
74pub const RADIX_TYPE_CAP_ALL: u64 = (1 << 7) - 1;
75
76pub const RADIX_VALUE_FLAG_NULL: u32 = 1 << 0;
77pub const RADIX_VALUE_FLAG_ALL: u32 = RADIX_VALUE_FLAG_NULL;
78pub const RADIX_RESULT_ITEM_FLAG_NULL: u32 = 1 << 0;
79pub const RADIX_RESULT_ITEM_FLAG_ALL: u32 = RADIX_RESULT_ITEM_FLAG_NULL;
80
81pub const RADIX_HASH_COMPONENT_BYTES: u16 = 1;
82pub const RADIX_HASH_COMPONENT_I64: u16 = 2;
83pub const RADIX_HASH_COMPONENT_U64: u16 = 3;
84pub const RADIX_HASH_COMPONENT_F64_BITS: u16 = 4;
85pub const RADIX_HASH_COMPONENT_EXTERNAL: u16 = 5;
86
87pub const RADIX_MAX_LOCAL_ID_BYTES: u32 = 255;
88pub const RADIX_MAX_DIAGNOSTIC_BYTES: u32 = 4 * 1024;
89pub const RADIX_MAX_EXTERNAL_VALUE_BYTES: u32 = 16 * 1024 * 1024;
90pub const RADIX_MAX_DESCRIPTOR_ENTRIES: u32 = u16::MAX as u32;
91pub const RADIX_MAX_FUNCTION_ARGUMENTS: u32 = 1024;
92pub const RADIX_MAX_PLANNER_SPANS: u32 = 4096;
93pub const RADIX_MAX_HASH_COMPONENTS: u32 = 256;
94pub const RADIX_MAX_HASH_BYTES: u32 = 64 * 1024;
95
96pub const RADIX_BUILTIN_TYPE_MIN: u16 = 1;
98pub const RADIX_BUILTIN_TYPE_MAX: u16 = 11;
99pub const RADIX_BUILTIN_INTEGER: u16 = 1;
100pub const RADIX_BUILTIN_FLOAT: u16 = 2;
101pub const RADIX_BUILTIN_TEXT: u16 = 3;
102pub const RADIX_BUILTIN_BOOLEAN: u16 = 4;
103pub const RADIX_BUILTIN_TIMESTAMP: u16 = 5;
104pub const RADIX_BUILTIN_JSON: u16 = 6;
105pub const RADIX_BUILTIN_VECTOR: u16 = 7;
106pub const RADIX_BUILTIN_UUID: u16 = 8;
107pub const RADIX_BUILTIN_DECIMAL: u16 = 9;
108pub const RADIX_BUILTIN_DATE: u16 = 10;
109pub const RADIX_BUILTIN_BYTES: u16 = 11;