1/* 2 * MessagePack unpacking routine template 3 * 4 * Copyright (C) 2008-2010 FURUHASHI Sadayuki 5 * 6 * Distributed under the Boost Software License, Version 1.0. 7 * (See accompanying file LICENSE_1_0.txt or copy at 8 * http://www.boost.org/LICENSE_1_0.txt) 9 */ 10#ifndef MSGPACK_UNPACK_DEFINE_H 11#define MSGPACK_UNPACK_DEFINE_H 12 13#include "msgpack/sysdep.h" 14#include <stdlib.h> 15#include <string.h> 16#include <assert.h> 17#include <stdio.h> 18 19#ifdef __cplusplus 20extern "C" { 21#endif 22 23 24#ifndef MSGPACK_EMBED_STACK_SIZE 25#define MSGPACK_EMBED_STACK_SIZE 32 26#endif 27 28 29typedef enum { 30 MSGPACK_CS_HEADER = 0x00, // nil 31 32 //MSGPACK_CS_ = 0x01, 33 //MSGPACK_CS_ = 0x02, // false 34 //MSGPACK_CS_ = 0x03, // true 35 36 MSGPACK_CS_BIN_8 = 0x04, 37 MSGPACK_CS_BIN_16 = 0x05, 38 MSGPACK_CS_BIN_32 = 0x06, 39 40 MSGPACK_CS_EXT_8 = 0x07, 41 MSGPACK_CS_EXT_16 = 0x08, 42 MSGPACK_CS_EXT_32 = 0x09, 43 44 MSGPACK_CS_FLOAT = 0x0a, 45 MSGPACK_CS_DOUBLE = 0x0b, 46 MSGPACK_CS_UINT_8 = 0x0c, 47 MSGPACK_CS_UINT_16 = 0x0d, 48 MSGPACK_CS_UINT_32 = 0x0e, 49 MSGPACK_CS_UINT_64 = 0x0f, 50 MSGPACK_CS_INT_8 = 0x10, 51 MSGPACK_CS_INT_16 = 0x11, 52 MSGPACK_CS_INT_32 = 0x12, 53 MSGPACK_CS_INT_64 = 0x13, 54 55 MSGPACK_CS_FIXEXT_1 = 0x14, 56 MSGPACK_CS_FIXEXT_2 = 0x15, 57 MSGPACK_CS_FIXEXT_4 = 0x16, 58 MSGPACK_CS_FIXEXT_8 = 0x17, 59 MSGPACK_CS_FIXEXT_16 = 0x18, 60 61 MSGPACK_CS_STR_8 = 0x19, // str8 62 MSGPACK_CS_STR_16 = 0x1a, // str16 63 MSGPACK_CS_STR_32 = 0x1b, // str32 64 MSGPACK_CS_ARRAY_16 = 0x1c, 65 MSGPACK_CS_ARRAY_32 = 0x1d, 66 MSGPACK_CS_MAP_16 = 0x1e, 67 MSGPACK_CS_MAP_32 = 0x1f, 68 69 //MSGPACK_ACS_BIG_INT_VALUE, 70 //MSGPACK_ACS_BIG_FLOAT_VALUE, 71 MSGPACK_ACS_STR_VALUE, 72 MSGPACK_ACS_BIN_VALUE, 73 MSGPACK_ACS_EXT_VALUE 74} msgpack_unpack_state; 75 76 77typedef enum { 78 MSGPACK_CT_ARRAY_ITEM, 79 MSGPACK_CT_MAP_KEY, 80 MSGPACK_CT_MAP_VALUE 81} msgpack_container_type; 82 83 84#ifdef __cplusplus 85} 86#endif 87 88#endif /* msgpack/unpack_define.h */ 89 90