mirror of
https://gitlab.com/fabinfra/fabaccess/fabaccess-api.git
synced 2025-03-12 23:01:47 +01:00
28 lines
879 B
Cap'n Proto
28 lines
879 B
Cap'n Proto
@0xff5b4a767d98592a;
|
|
|
|
using Rust = import "programming_language/rust.capnp";
|
|
$Rust.parentModule("schema");
|
|
|
|
using CSharp = import "programming_language/csharp.capnp";
|
|
$CSharp.namespace("FabAccessAPI.Schema");
|
|
|
|
struct UUID {
|
|
# UUID type used to identify machines.
|
|
# Since the exact value has no meaning the encoding rules are not too relevant, but it is
|
|
# paramount that you are consistent when encoding and decoding this type.
|
|
#
|
|
# Consider using this algorithm for assembling the 128-bit integer:
|
|
# (assuming ISO9899:2018 shifting & casting rules)
|
|
# uint128_t num = (uuid1 << 64) + uuid0;
|
|
# And then respectively this code for deconstructing it:
|
|
# uint64_t uuid0 = (uint64_t) num;
|
|
# uint64_t uuid1 = (uint64_t) (num >> 64);
|
|
|
|
uuid0 @0 :UInt64;
|
|
uuid1 @1 :UInt64;
|
|
}
|
|
|
|
struct KeyValuePair {
|
|
key @0 :Text;
|
|
value @1 :Text;
|
|
} |