1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
# msgpack-tools
# echo '{"array": [1,2,3], "object": {"key": "value"}, "number": 123, "string": "abc", "true": true, "false": false, "null": null}' | json2msgpack > types.msgpack
$ fq -d msgpack 'dv,torepr' types.msgpack
|00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f|0123456789abcdef|.{}: types.msgpack (msgpack) 0x0-0x43 (67)
0x00|87 |. | type: "fixmap" (0x87) 0x0-0x1 (1)
0x00|87 |. | length: 7 0x0.4-0x1 (0.4)
| | | pairs[0:7]: 0x1-0x43 (66)
| | | [0]{}: pair 0x1-0xb (10)
| | | key{}: 0x1-0x7 (6)
0x00| a5 | . | type: "fixstr" (0xa5) 0x1-0x2 (1)
0x00| a5 | . | length: 5 0x1.3-0x2 (0.5)
0x00| 61 72 72 61 79 | array | value: "array" 0x2-0x7 (5)
| | | value{}: 0x7-0xb (4)
0x00| 93 | . | type: "fixarray" (0x93) 0x7-0x8 (1)
0x00| 93 | . | length: 3 0x7.4-0x8 (0.4)
| | | elements[0:3]: 0x8-0xb (3)
| | | [0]{}: element 0x8-0x9 (1)
0x00| 01 | . | type: "positive_fixint" (0x1) 0x8-0x9 (1)
0x00| 01 | . | value: 1 0x8-0x9 (1)
| | | [1]{}: element 0x9-0xa (1)
0x00| 02 | . | type: "positive_fixint" (0x2) 0x9-0xa (1)
0x00| 02 | . | value: 2 0x9-0xa (1)
| | | [2]{}: element 0xa-0xb (1)
0x00| 03 | . | type: "positive_fixint" (0x3) 0xa-0xb (1)
0x00| 03 | . | value: 3 0xa-0xb (1)
| | | [1]{}: pair 0xb-0x1d (18)
| | | key{}: 0xb-0x12 (7)
0x00| a6 | . | type: "fixstr" (0xa6) 0xb-0xc (1)
0x00| a6 | . | length: 6 0xb.3-0xc (0.5)
0x00| 6f 62 6a 65| obje| value: "object" 0xc-0x12 (6)
0x10|63 74 |ct |
| | | value{}: 0x12-0x1d (11)
0x10| 81 | . | type: "fixmap" (0x81) 0x12-0x13 (1)
0x10| 81 | . | length: 1 0x12.4-0x13 (0.4)
| | | pairs[0:1]: 0x13-0x1d (10)
| | | [0]{}: pair 0x13-0x1d (10)
| | | key{}: 0x13-0x17 (4)
0x10| a3 | . | type: "fixstr" (0xa3) 0x13-0x14 (1)
0x10| a3 | . | length: 3 0x13.3-0x14 (0.5)
0x10| 6b 65 79 | key | value: "key" 0x14-0x17 (3)
| | | value{}: 0x17-0x1d (6)
0x10| a5 | . | type: "fixstr" (0xa5) 0x17-0x18 (1)
0x10| a5 | . | length: 5 0x17.3-0x18 (0.5)
0x10| 76 61 6c 75 65 | value | value: "value" 0x18-0x1d (5)
| | | [2]{}: pair 0x1d-0x25 (8)
| | | key{}: 0x1d-0x24 (7)
0x10| a6 | . | type: "fixstr" (0xa6) 0x1d-0x1e (1)
0x10| a6 | . | length: 6 0x1d.3-0x1e (0.5)
0x10| 6e 75| nu| value: "number" 0x1e-0x24 (6)
0x20|6d 62 65 72 |mber |
| | | value{}: 0x24-0x25 (1)
0x20| 7b | { | type: "positive_fixint" (0x7b) 0x24-0x25 (1)
0x20| 7b | { | value: 123 0x24-0x25 (1)
| | | [3]{}: pair 0x25-0x30 (11)
| | | key{}: 0x25-0x2c (7)
0x20| a6 | . | type: "fixstr" (0xa6) 0x25-0x26 (1)
0x20| a6 | . | length: 6 0x25.3-0x26 (0.5)
0x20| 73 74 72 69 6e 67 | string | value: "string" 0x26-0x2c (6)
| | | value{}: 0x2c-0x30 (4)
0x20| a3 | . | type: "fixstr" (0xa3) 0x2c-0x2d (1)
0x20| a3 | . | length: 3 0x2c.3-0x2d (0.5)
0x20| 61 62 63| abc| value: "abc" 0x2d-0x30 (3)
| | | [4]{}: pair 0x30-0x36 (6)
| | | key{}: 0x30-0x35 (5)
0x30|a4 |. | type: "fixstr" (0xa4) 0x30-0x31 (1)
0x30|a4 |. | length: 4 0x30.3-0x31 (0.5)
0x30| 74 72 75 65 | true | value: "true" 0x31-0x35 (4)
| | | value{}: 0x35-0x36 (1)
0x30| c3 | . | type: "true" (0xc3) 0x35-0x36 (1)
| | | value: true
| | | [5]{}: pair 0x36-0x3d (7)
| | | key{}: 0x36-0x3c (6)
0x30| a5 | . | type: "fixstr" (0xa5) 0x36-0x37 (1)
0x30| a5 | . | length: 5 0x36.3-0x37 (0.5)
0x30| 66 61 6c 73 65 | false | value: "false" 0x37-0x3c (5)
| | | value{}: 0x3c-0x3d (1)
0x30| c2 | . | type: "false" (0xc2) 0x3c-0x3d (1)
| | | value: false
| | | [6]{}: pair 0x3d-0x43 (6)
| | | key{}: 0x3d-0x42 (5)
0x30| a4 | . | type: "fixstr" (0xa4) 0x3d-0x3e (1)
0x30| a4 | . | length: 4 0x3d.3-0x3e (0.5)
0x30| 6e 75| nu| value: "null" 0x3e-0x42 (4)
0x40|6c 6c |ll |
| | | value{}: 0x42-0x43 (1)
0x40| c0| | .| | type: "nil" (0xc0) 0x42-0x43 (1)
| | | value: null
{
"array": [
1,
2,
3
],
"false": false,
"null": null,
"number": 123,
"object": {
"key": "value"
},
"string": "abc",
"true": true
}
|