https://github.com/ik5/fp-msgpack
Pure native Object Pascal implementation for msgpack
https://github.com/ik5/fp-msgpack
Last synced: 4 months ago
JSON representation
Pure native Object Pascal implementation for msgpack
- Host: GitHub
- URL: https://github.com/ik5/fp-msgpack
- Owner: ik5
- License: mit
- Created: 2012-10-09T23:24:32.000Z (over 13 years ago)
- Default Branch: master
- Last Pushed: 2013-01-02T11:06:04.000Z (over 13 years ago)
- Last Synced: 2025-09-23T19:38:48.109Z (9 months ago)
- Language: Delphi
- Size: 438 KB
- Stars: 9
- Watchers: 3
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: license
Awesome Lists containing this project
README
Introduction
============
[MessagePack](http://msgpack.org/) saves type-information to the serialized data. Thus each data is
stored in **type-data** or **type-length-data** style.
MessagePack supports following types:
* Fixed length types
- Integers
- nil
- boolean
- Floating point
* Variable length types
- Raw bytes
* Container types
- Arrays
- Maps
Each type has one or more serialize format:
* Fixed length types
- Integers
+ positive fixnum
+ negative fixnum
+ uint 8
+ uint 16
+ uint 32
+ uint 64
+ int 8
+ int 16
+ int 32
+ int 64
- Nil
+ nil
- Boolean
+ true
+ false
- Floating point
+ float
+ double
* Variable length types
- Raw bytes
+ fix raw
+ raw 16
+ raw 32
* Container types
- Arrays
+ fix array
+ array 16
+ array 32
- Maps
+ fix map
+ map 16
+ map 32
Current Implementation
======================
The following code provides pure Object Pascal implementation of msgpack
according to [Format Specification](http://wiki.msgpack.org/display/MSGPACK/Format+specification) from Dec 31 2012.
Files
-----
* src/
- msgpack.pas - basic implementation for packing and unpacking data
- msgpack_consts - constant information regarding the protocol
- msgpack_errors - a unit for error resourcestring holdings
- msgpack_bits - a unit that does bit manipulation that does not exists on FPC by itself
* tests/
- msgpack\_testing.lpr - program that uses fpcunit
- convert\_testcase.pas - unit test for msgpack.pas
* examples/
* docs/
* license - The following library is using MIT license
* README.md - this file