Types » History » Version 3
« Previous -
Version 3/13
(diff) -
Next » -
Current version
J. Moringen, 03/18/2011 02:33 PM
fixed 64 bit unsigned integer for Common Lisp
Types¶
Wire Schema <-> Programming Language Types Mapping¶
Fundamental Types¶
For "fundamental" types, the mapping is based on the type mapping used by Google's protocol buffers.
Wire Schema | String Designator | C++ | Python | Java | Common Lisp |
---|---|---|---|---|---|
Double precision float | "double" | double | double | double-float | |
Single precision float | "float" | float | float | float | single-float |
32 bit signed integer | "int32" | int32 | int | (signed-byte 32) | |
64 bit signed integer | "int64" | int64 | long | (signed-byte 64) | |
32 bit unsigned integer | "uint32" | uint32 | int | (unsigned-byte 32) | |
64 bit unsigned integer | "uint64" | uint64 | long | (unsigned-byte 64) | |
bool | "bool" | bool | bool | boolean | boolean |
UTF-8 string | "string" | string | str | String | string |
Sequence of Bytes | "bytes" | string | ByteString | (simple-array (unsigned-byte 8) (*)) |
Structured Data¶
This section is just a proposal.
For structured data types using more sophisticated serialization mechanisms, the resulting wire schemas could be designated by something like MECHANISM:MECHANISM-SPECIFIC-DESIGNATOR
. For example
protocol-buffer:.rst.ImageMessage boost_serialization:sound::pcm::Buffer