coinex-api 0.0.15__py3-none-any.whl → 0.0.16__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (289) hide show
  1. coinex/__init__.py +7 -0
  2. coinex/ccxt/__init__.py +101 -0
  3. coinex/ccxt/abstract/coinex.py +237 -0
  4. coinex/ccxt/async_support/__init__.py +80 -0
  5. coinex/ccxt/async_support/base/__init__.py +1 -0
  6. coinex/ccxt/async_support/base/exchange.py +2100 -0
  7. coinex/ccxt/async_support/base/throttler.py +50 -0
  8. coinex/ccxt/async_support/base/ws/__init__.py +38 -0
  9. coinex/ccxt/async_support/base/ws/aiohttp_client.py +147 -0
  10. coinex/ccxt/async_support/base/ws/cache.py +213 -0
  11. coinex/ccxt/async_support/base/ws/client.py +214 -0
  12. coinex/ccxt/async_support/base/ws/fast_client.py +97 -0
  13. coinex/ccxt/async_support/base/ws/functions.py +59 -0
  14. coinex/ccxt/async_support/base/ws/future.py +69 -0
  15. coinex/ccxt/async_support/base/ws/order_book.py +78 -0
  16. coinex/ccxt/async_support/base/ws/order_book_side.py +174 -0
  17. coinex/ccxt/async_support/coinex.py +5833 -0
  18. coinex/ccxt/base/__init__.py +27 -0
  19. coinex/ccxt/base/decimal_to_precision.py +174 -0
  20. coinex/ccxt/base/errors.py +267 -0
  21. coinex/ccxt/base/exchange.py +6769 -0
  22. coinex/ccxt/base/precise.py +297 -0
  23. coinex/ccxt/base/types.py +577 -0
  24. coinex/ccxt/coinex.py +5832 -0
  25. coinex/ccxt/pro/__init__.py +21 -0
  26. coinex/ccxt/pro/coinex.py +1366 -0
  27. coinex/ccxt/static_dependencies/README.md +1 -0
  28. coinex/ccxt/static_dependencies/__init__.py +1 -0
  29. coinex/ccxt/static_dependencies/ecdsa/__init__.py +14 -0
  30. coinex/ccxt/static_dependencies/ecdsa/_version.py +520 -0
  31. coinex/ccxt/static_dependencies/ecdsa/curves.py +56 -0
  32. coinex/ccxt/static_dependencies/ecdsa/der.py +221 -0
  33. coinex/ccxt/static_dependencies/ecdsa/ecdsa.py +310 -0
  34. coinex/ccxt/static_dependencies/ecdsa/ellipticcurve.py +197 -0
  35. coinex/ccxt/static_dependencies/ecdsa/keys.py +332 -0
  36. coinex/ccxt/static_dependencies/ecdsa/numbertheory.py +531 -0
  37. coinex/ccxt/static_dependencies/ecdsa/rfc6979.py +100 -0
  38. coinex/ccxt/static_dependencies/ecdsa/util.py +266 -0
  39. coinex/ccxt/static_dependencies/ethereum/__init__.py +7 -0
  40. coinex/ccxt/static_dependencies/ethereum/abi/__init__.py +16 -0
  41. coinex/ccxt/static_dependencies/ethereum/abi/abi.py +19 -0
  42. coinex/ccxt/static_dependencies/ethereum/abi/base.py +152 -0
  43. coinex/ccxt/static_dependencies/ethereum/abi/codec.py +217 -0
  44. coinex/ccxt/static_dependencies/ethereum/abi/constants.py +3 -0
  45. coinex/ccxt/static_dependencies/ethereum/abi/decoding.py +565 -0
  46. coinex/ccxt/static_dependencies/ethereum/abi/encoding.py +720 -0
  47. coinex/ccxt/static_dependencies/ethereum/abi/exceptions.py +139 -0
  48. coinex/ccxt/static_dependencies/ethereum/abi/grammar.py +443 -0
  49. coinex/ccxt/static_dependencies/ethereum/abi/packed.py +13 -0
  50. coinex/ccxt/static_dependencies/ethereum/abi/py.typed +0 -0
  51. coinex/ccxt/static_dependencies/ethereum/abi/registry.py +643 -0
  52. coinex/ccxt/static_dependencies/ethereum/abi/tools/__init__.py +3 -0
  53. coinex/ccxt/static_dependencies/ethereum/abi/tools/_strategies.py +230 -0
  54. coinex/ccxt/static_dependencies/ethereum/abi/utils/__init__.py +0 -0
  55. coinex/ccxt/static_dependencies/ethereum/abi/utils/numeric.py +83 -0
  56. coinex/ccxt/static_dependencies/ethereum/abi/utils/padding.py +27 -0
  57. coinex/ccxt/static_dependencies/ethereum/abi/utils/string.py +19 -0
  58. coinex/ccxt/static_dependencies/ethereum/account/__init__.py +3 -0
  59. coinex/ccxt/static_dependencies/ethereum/account/encode_typed_data/__init__.py +4 -0
  60. coinex/ccxt/static_dependencies/ethereum/account/encode_typed_data/encoding_and_hashing.py +239 -0
  61. coinex/ccxt/static_dependencies/ethereum/account/encode_typed_data/helpers.py +40 -0
  62. coinex/ccxt/static_dependencies/ethereum/account/messages.py +263 -0
  63. coinex/ccxt/static_dependencies/ethereum/account/py.typed +0 -0
  64. coinex/ccxt/static_dependencies/ethereum/hexbytes/__init__.py +5 -0
  65. coinex/ccxt/static_dependencies/ethereum/hexbytes/_utils.py +54 -0
  66. coinex/ccxt/static_dependencies/ethereum/hexbytes/main.py +65 -0
  67. coinex/ccxt/static_dependencies/ethereum/hexbytes/py.typed +0 -0
  68. coinex/ccxt/static_dependencies/ethereum/typing/__init__.py +63 -0
  69. coinex/ccxt/static_dependencies/ethereum/typing/abi.py +6 -0
  70. coinex/ccxt/static_dependencies/ethereum/typing/bls.py +7 -0
  71. coinex/ccxt/static_dependencies/ethereum/typing/discovery.py +5 -0
  72. coinex/ccxt/static_dependencies/ethereum/typing/encoding.py +7 -0
  73. coinex/ccxt/static_dependencies/ethereum/typing/enums.py +17 -0
  74. coinex/ccxt/static_dependencies/ethereum/typing/ethpm.py +9 -0
  75. coinex/ccxt/static_dependencies/ethereum/typing/evm.py +20 -0
  76. coinex/ccxt/static_dependencies/ethereum/typing/networks.py +1122 -0
  77. coinex/ccxt/static_dependencies/ethereum/typing/py.typed +0 -0
  78. coinex/ccxt/static_dependencies/ethereum/utils/__init__.py +115 -0
  79. coinex/ccxt/static_dependencies/ethereum/utils/abi.py +72 -0
  80. coinex/ccxt/static_dependencies/ethereum/utils/address.py +171 -0
  81. coinex/ccxt/static_dependencies/ethereum/utils/applicators.py +151 -0
  82. coinex/ccxt/static_dependencies/ethereum/utils/conversions.py +190 -0
  83. coinex/ccxt/static_dependencies/ethereum/utils/currency.py +107 -0
  84. coinex/ccxt/static_dependencies/ethereum/utils/curried/__init__.py +269 -0
  85. coinex/ccxt/static_dependencies/ethereum/utils/debug.py +20 -0
  86. coinex/ccxt/static_dependencies/ethereum/utils/decorators.py +132 -0
  87. coinex/ccxt/static_dependencies/ethereum/utils/encoding.py +6 -0
  88. coinex/ccxt/static_dependencies/ethereum/utils/exceptions.py +4 -0
  89. coinex/ccxt/static_dependencies/ethereum/utils/functional.py +75 -0
  90. coinex/ccxt/static_dependencies/ethereum/utils/hexadecimal.py +74 -0
  91. coinex/ccxt/static_dependencies/ethereum/utils/humanize.py +188 -0
  92. coinex/ccxt/static_dependencies/ethereum/utils/logging.py +159 -0
  93. coinex/ccxt/static_dependencies/ethereum/utils/module_loading.py +31 -0
  94. coinex/ccxt/static_dependencies/ethereum/utils/numeric.py +43 -0
  95. coinex/ccxt/static_dependencies/ethereum/utils/py.typed +0 -0
  96. coinex/ccxt/static_dependencies/ethereum/utils/toolz.py +76 -0
  97. coinex/ccxt/static_dependencies/ethereum/utils/types.py +54 -0
  98. coinex/ccxt/static_dependencies/ethereum/utils/typing/__init__.py +18 -0
  99. coinex/ccxt/static_dependencies/ethereum/utils/typing/misc.py +14 -0
  100. coinex/ccxt/static_dependencies/ethereum/utils/units.py +31 -0
  101. coinex/ccxt/static_dependencies/keccak/__init__.py +3 -0
  102. coinex/ccxt/static_dependencies/keccak/keccak.py +197 -0
  103. coinex/ccxt/static_dependencies/lark/__init__.py +38 -0
  104. coinex/ccxt/static_dependencies/lark/__pyinstaller/__init__.py +6 -0
  105. coinex/ccxt/static_dependencies/lark/__pyinstaller/hook-lark.py +14 -0
  106. coinex/ccxt/static_dependencies/lark/ast_utils.py +59 -0
  107. coinex/ccxt/static_dependencies/lark/common.py +86 -0
  108. coinex/ccxt/static_dependencies/lark/exceptions.py +292 -0
  109. coinex/ccxt/static_dependencies/lark/grammar.py +130 -0
  110. coinex/ccxt/static_dependencies/lark/grammars/__init__.py +0 -0
  111. coinex/ccxt/static_dependencies/lark/grammars/common.lark +59 -0
  112. coinex/ccxt/static_dependencies/lark/grammars/lark.lark +62 -0
  113. coinex/ccxt/static_dependencies/lark/grammars/python.lark +302 -0
  114. coinex/ccxt/static_dependencies/lark/grammars/unicode.lark +7 -0
  115. coinex/ccxt/static_dependencies/lark/indenter.py +143 -0
  116. coinex/ccxt/static_dependencies/lark/lark.py +658 -0
  117. coinex/ccxt/static_dependencies/lark/lexer.py +678 -0
  118. coinex/ccxt/static_dependencies/lark/load_grammar.py +1428 -0
  119. coinex/ccxt/static_dependencies/lark/parse_tree_builder.py +391 -0
  120. coinex/ccxt/static_dependencies/lark/parser_frontends.py +257 -0
  121. coinex/ccxt/static_dependencies/lark/parsers/__init__.py +0 -0
  122. coinex/ccxt/static_dependencies/lark/parsers/cyk.py +340 -0
  123. coinex/ccxt/static_dependencies/lark/parsers/earley.py +314 -0
  124. coinex/ccxt/static_dependencies/lark/parsers/earley_common.py +42 -0
  125. coinex/ccxt/static_dependencies/lark/parsers/earley_forest.py +801 -0
  126. coinex/ccxt/static_dependencies/lark/parsers/grammar_analysis.py +203 -0
  127. coinex/ccxt/static_dependencies/lark/parsers/lalr_analysis.py +332 -0
  128. coinex/ccxt/static_dependencies/lark/parsers/lalr_interactive_parser.py +158 -0
  129. coinex/ccxt/static_dependencies/lark/parsers/lalr_parser.py +122 -0
  130. coinex/ccxt/static_dependencies/lark/parsers/lalr_parser_state.py +110 -0
  131. coinex/ccxt/static_dependencies/lark/parsers/xearley.py +165 -0
  132. coinex/ccxt/static_dependencies/lark/py.typed +0 -0
  133. coinex/ccxt/static_dependencies/lark/reconstruct.py +107 -0
  134. coinex/ccxt/static_dependencies/lark/tools/__init__.py +70 -0
  135. coinex/ccxt/static_dependencies/lark/tools/nearley.py +202 -0
  136. coinex/ccxt/static_dependencies/lark/tools/serialize.py +32 -0
  137. coinex/ccxt/static_dependencies/lark/tools/standalone.py +196 -0
  138. coinex/ccxt/static_dependencies/lark/tree.py +267 -0
  139. coinex/ccxt/static_dependencies/lark/tree_matcher.py +186 -0
  140. coinex/ccxt/static_dependencies/lark/tree_templates.py +180 -0
  141. coinex/ccxt/static_dependencies/lark/utils.py +343 -0
  142. coinex/ccxt/static_dependencies/lark/visitors.py +596 -0
  143. coinex/ccxt/static_dependencies/marshmallow/__init__.py +81 -0
  144. coinex/ccxt/static_dependencies/marshmallow/base.py +65 -0
  145. coinex/ccxt/static_dependencies/marshmallow/class_registry.py +94 -0
  146. coinex/ccxt/static_dependencies/marshmallow/decorators.py +231 -0
  147. coinex/ccxt/static_dependencies/marshmallow/error_store.py +60 -0
  148. coinex/ccxt/static_dependencies/marshmallow/exceptions.py +71 -0
  149. coinex/ccxt/static_dependencies/marshmallow/fields.py +2114 -0
  150. coinex/ccxt/static_dependencies/marshmallow/orderedset.py +89 -0
  151. coinex/ccxt/static_dependencies/marshmallow/py.typed +0 -0
  152. coinex/ccxt/static_dependencies/marshmallow/schema.py +1228 -0
  153. coinex/ccxt/static_dependencies/marshmallow/types.py +12 -0
  154. coinex/ccxt/static_dependencies/marshmallow/utils.py +378 -0
  155. coinex/ccxt/static_dependencies/marshmallow/validate.py +678 -0
  156. coinex/ccxt/static_dependencies/marshmallow/warnings.py +2 -0
  157. coinex/ccxt/static_dependencies/marshmallow_dataclass/__init__.py +1047 -0
  158. coinex/ccxt/static_dependencies/marshmallow_dataclass/collection_field.py +51 -0
  159. coinex/ccxt/static_dependencies/marshmallow_dataclass/lazy_class_attribute.py +45 -0
  160. coinex/ccxt/static_dependencies/marshmallow_dataclass/mypy.py +71 -0
  161. coinex/ccxt/static_dependencies/marshmallow_dataclass/py.typed +0 -0
  162. coinex/ccxt/static_dependencies/marshmallow_dataclass/typing.py +14 -0
  163. coinex/ccxt/static_dependencies/marshmallow_dataclass/union_field.py +82 -0
  164. coinex/ccxt/static_dependencies/marshmallow_oneofschema/__init__.py +1 -0
  165. coinex/ccxt/static_dependencies/marshmallow_oneofschema/one_of_schema.py +193 -0
  166. coinex/ccxt/static_dependencies/marshmallow_oneofschema/py.typed +0 -0
  167. coinex/ccxt/static_dependencies/msgpack/__init__.py +55 -0
  168. coinex/ccxt/static_dependencies/msgpack/_cmsgpack.pyx +11 -0
  169. coinex/ccxt/static_dependencies/msgpack/_packer.pyx +374 -0
  170. coinex/ccxt/static_dependencies/msgpack/_unpacker.pyx +547 -0
  171. coinex/ccxt/static_dependencies/msgpack/buff_converter.h +8 -0
  172. coinex/ccxt/static_dependencies/msgpack/exceptions.py +48 -0
  173. coinex/ccxt/static_dependencies/msgpack/ext.py +168 -0
  174. coinex/ccxt/static_dependencies/msgpack/fallback.py +951 -0
  175. coinex/ccxt/static_dependencies/msgpack/pack.h +89 -0
  176. coinex/ccxt/static_dependencies/msgpack/pack_template.h +820 -0
  177. coinex/ccxt/static_dependencies/msgpack/sysdep.h +194 -0
  178. coinex/ccxt/static_dependencies/msgpack/unpack.h +391 -0
  179. coinex/ccxt/static_dependencies/msgpack/unpack_define.h +95 -0
  180. coinex/ccxt/static_dependencies/msgpack/unpack_template.h +464 -0
  181. coinex/ccxt/static_dependencies/parsimonious/__init__.py +10 -0
  182. coinex/ccxt/static_dependencies/parsimonious/exceptions.py +105 -0
  183. coinex/ccxt/static_dependencies/parsimonious/expressions.py +479 -0
  184. coinex/ccxt/static_dependencies/parsimonious/grammar.py +487 -0
  185. coinex/ccxt/static_dependencies/parsimonious/nodes.py +325 -0
  186. coinex/ccxt/static_dependencies/parsimonious/utils.py +40 -0
  187. coinex/ccxt/static_dependencies/starknet/__init__.py +0 -0
  188. coinex/ccxt/static_dependencies/starknet/abi/v0/__init__.py +2 -0
  189. coinex/ccxt/static_dependencies/starknet/abi/v0/model.py +44 -0
  190. coinex/ccxt/static_dependencies/starknet/abi/v0/parser.py +216 -0
  191. coinex/ccxt/static_dependencies/starknet/abi/v0/schemas.py +72 -0
  192. coinex/ccxt/static_dependencies/starknet/abi/v0/shape.py +63 -0
  193. coinex/ccxt/static_dependencies/starknet/abi/v1/__init__.py +2 -0
  194. coinex/ccxt/static_dependencies/starknet/abi/v1/core_structures.json +14 -0
  195. coinex/ccxt/static_dependencies/starknet/abi/v1/model.py +39 -0
  196. coinex/ccxt/static_dependencies/starknet/abi/v1/parser.py +220 -0
  197. coinex/ccxt/static_dependencies/starknet/abi/v1/parser_transformer.py +179 -0
  198. coinex/ccxt/static_dependencies/starknet/abi/v1/schemas.py +66 -0
  199. coinex/ccxt/static_dependencies/starknet/abi/v1/shape.py +47 -0
  200. coinex/ccxt/static_dependencies/starknet/abi/v2/__init__.py +2 -0
  201. coinex/ccxt/static_dependencies/starknet/abi/v2/model.py +89 -0
  202. coinex/ccxt/static_dependencies/starknet/abi/v2/parser.py +293 -0
  203. coinex/ccxt/static_dependencies/starknet/abi/v2/parser_transformer.py +192 -0
  204. coinex/ccxt/static_dependencies/starknet/abi/v2/schemas.py +132 -0
  205. coinex/ccxt/static_dependencies/starknet/abi/v2/shape.py +107 -0
  206. coinex/ccxt/static_dependencies/starknet/cairo/__init__.py +0 -0
  207. coinex/ccxt/static_dependencies/starknet/cairo/data_types.py +123 -0
  208. coinex/ccxt/static_dependencies/starknet/cairo/deprecated_parse/__init__.py +0 -0
  209. coinex/ccxt/static_dependencies/starknet/cairo/deprecated_parse/cairo_types.py +77 -0
  210. coinex/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser.py +46 -0
  211. coinex/ccxt/static_dependencies/starknet/cairo/deprecated_parse/parser_transformer.py +138 -0
  212. coinex/ccxt/static_dependencies/starknet/cairo/felt.py +64 -0
  213. coinex/ccxt/static_dependencies/starknet/cairo/type_parser.py +121 -0
  214. coinex/ccxt/static_dependencies/starknet/cairo/v1/__init__.py +0 -0
  215. coinex/ccxt/static_dependencies/starknet/cairo/v1/type_parser.py +59 -0
  216. coinex/ccxt/static_dependencies/starknet/cairo/v2/__init__.py +0 -0
  217. coinex/ccxt/static_dependencies/starknet/cairo/v2/type_parser.py +77 -0
  218. coinex/ccxt/static_dependencies/starknet/ccxt_utils.py +7 -0
  219. coinex/ccxt/static_dependencies/starknet/common.py +15 -0
  220. coinex/ccxt/static_dependencies/starknet/constants.py +39 -0
  221. coinex/ccxt/static_dependencies/starknet/hash/__init__.py +0 -0
  222. coinex/ccxt/static_dependencies/starknet/hash/address.py +79 -0
  223. coinex/ccxt/static_dependencies/starknet/hash/compiled_class_hash_objects.py +111 -0
  224. coinex/ccxt/static_dependencies/starknet/hash/selector.py +16 -0
  225. coinex/ccxt/static_dependencies/starknet/hash/storage.py +12 -0
  226. coinex/ccxt/static_dependencies/starknet/hash/utils.py +78 -0
  227. coinex/ccxt/static_dependencies/starknet/models/__init__.py +0 -0
  228. coinex/ccxt/static_dependencies/starknet/models/typed_data.py +45 -0
  229. coinex/ccxt/static_dependencies/starknet/serialization/__init__.py +24 -0
  230. coinex/ccxt/static_dependencies/starknet/serialization/_calldata_reader.py +40 -0
  231. coinex/ccxt/static_dependencies/starknet/serialization/_context.py +142 -0
  232. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/__init__.py +10 -0
  233. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/_common.py +82 -0
  234. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/array_serializer.py +43 -0
  235. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/bool_serializer.py +37 -0
  236. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/byte_array_serializer.py +66 -0
  237. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/cairo_data_serializer.py +71 -0
  238. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/enum_serializer.py +71 -0
  239. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/felt_serializer.py +50 -0
  240. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/named_tuple_serializer.py +58 -0
  241. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/option_serializer.py +43 -0
  242. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/output_serializer.py +40 -0
  243. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/payload_serializer.py +72 -0
  244. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/struct_serializer.py +36 -0
  245. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/tuple_serializer.py +36 -0
  246. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/uint256_serializer.py +76 -0
  247. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/uint_serializer.py +100 -0
  248. coinex/ccxt/static_dependencies/starknet/serialization/data_serializers/unit_serializer.py +32 -0
  249. coinex/ccxt/static_dependencies/starknet/serialization/errors.py +10 -0
  250. coinex/ccxt/static_dependencies/starknet/serialization/factory.py +229 -0
  251. coinex/ccxt/static_dependencies/starknet/serialization/function_serialization_adapter.py +110 -0
  252. coinex/ccxt/static_dependencies/starknet/serialization/tuple_dataclass.py +59 -0
  253. coinex/ccxt/static_dependencies/starknet/utils/__init__.py +0 -0
  254. coinex/ccxt/static_dependencies/starknet/utils/constructor_args_translator.py +86 -0
  255. coinex/ccxt/static_dependencies/starknet/utils/iterable.py +13 -0
  256. coinex/ccxt/static_dependencies/starknet/utils/schema.py +13 -0
  257. coinex/ccxt/static_dependencies/starknet/utils/typed_data.py +182 -0
  258. coinex/ccxt/static_dependencies/starkware/__init__.py +0 -0
  259. coinex/ccxt/static_dependencies/starkware/crypto/__init__.py +0 -0
  260. coinex/ccxt/static_dependencies/starkware/crypto/fast_pedersen_hash.py +50 -0
  261. coinex/ccxt/static_dependencies/starkware/crypto/math_utils.py +78 -0
  262. coinex/ccxt/static_dependencies/starkware/crypto/signature.py +2344 -0
  263. coinex/ccxt/static_dependencies/starkware/crypto/utils.py +63 -0
  264. coinex/ccxt/static_dependencies/sympy/__init__.py +0 -0
  265. coinex/ccxt/static_dependencies/sympy/core/__init__.py +0 -0
  266. coinex/ccxt/static_dependencies/sympy/core/intfunc.py +35 -0
  267. coinex/ccxt/static_dependencies/sympy/external/__init__.py +0 -0
  268. coinex/ccxt/static_dependencies/sympy/external/gmpy.py +345 -0
  269. coinex/ccxt/static_dependencies/sympy/external/importtools.py +187 -0
  270. coinex/ccxt/static_dependencies/sympy/external/ntheory.py +637 -0
  271. coinex/ccxt/static_dependencies/sympy/external/pythonmpq.py +341 -0
  272. coinex/ccxt/static_dependencies/toolz/__init__.py +26 -0
  273. coinex/ccxt/static_dependencies/toolz/_signatures.py +784 -0
  274. coinex/ccxt/static_dependencies/toolz/_version.py +520 -0
  275. coinex/ccxt/static_dependencies/toolz/compatibility.py +30 -0
  276. coinex/ccxt/static_dependencies/toolz/curried/__init__.py +101 -0
  277. coinex/ccxt/static_dependencies/toolz/curried/exceptions.py +22 -0
  278. coinex/ccxt/static_dependencies/toolz/curried/operator.py +22 -0
  279. coinex/ccxt/static_dependencies/toolz/dicttoolz.py +339 -0
  280. coinex/ccxt/static_dependencies/toolz/functoolz.py +1049 -0
  281. coinex/ccxt/static_dependencies/toolz/itertoolz.py +1057 -0
  282. coinex/ccxt/static_dependencies/toolz/recipes.py +46 -0
  283. coinex/ccxt/static_dependencies/toolz/utils.py +9 -0
  284. coinex/ccxt/static_dependencies/typing_inspect/__init__.py +0 -0
  285. coinex/ccxt/static_dependencies/typing_inspect/typing_inspect.py +851 -0
  286. {coinex_api-0.0.15.dist-info → coinex_api-0.0.16.dist-info}/METADATA +1 -1
  287. coinex_api-0.0.16.dist-info/RECORD +288 -0
  288. coinex_api-0.0.15.dist-info/RECORD +0 -3
  289. {coinex_api-0.0.15.dist-info → coinex_api-0.0.16.dist-info}/WHEEL +0 -0
@@ -0,0 +1,820 @@
1
+ /*
2
+ * MessagePack packing routine template
3
+ *
4
+ * Copyright (C) 2008-2010 FURUHASHI Sadayuki
5
+ *
6
+ * Licensed under the Apache License, Version 2.0 (the "License");
7
+ * you may not use this file except in compliance with the License.
8
+ * You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing, software
13
+ * distributed under the License is distributed on an "AS IS" BASIS,
14
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ * See the License for the specific language governing permissions and
16
+ * limitations under the License.
17
+ */
18
+
19
+ #if defined(__LITTLE_ENDIAN__)
20
+ #define TAKE8_8(d) ((uint8_t*)&d)[0]
21
+ #define TAKE8_16(d) ((uint8_t*)&d)[0]
22
+ #define TAKE8_32(d) ((uint8_t*)&d)[0]
23
+ #define TAKE8_64(d) ((uint8_t*)&d)[0]
24
+ #elif defined(__BIG_ENDIAN__)
25
+ #define TAKE8_8(d) ((uint8_t*)&d)[0]
26
+ #define TAKE8_16(d) ((uint8_t*)&d)[1]
27
+ #define TAKE8_32(d) ((uint8_t*)&d)[3]
28
+ #define TAKE8_64(d) ((uint8_t*)&d)[7]
29
+ #endif
30
+
31
+ #ifndef msgpack_pack_append_buffer
32
+ #error msgpack_pack_append_buffer callback is not defined
33
+ #endif
34
+
35
+
36
+ /*
37
+ * Integer
38
+ */
39
+
40
+ #define msgpack_pack_real_uint8(x, d) \
41
+ do { \
42
+ if(d < (1<<7)) { \
43
+ /* fixnum */ \
44
+ msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); \
45
+ } else { \
46
+ /* unsigned 8 */ \
47
+ unsigned char buf[2] = {0xcc, TAKE8_8(d)}; \
48
+ msgpack_pack_append_buffer(x, buf, 2); \
49
+ } \
50
+ } while(0)
51
+
52
+ #define msgpack_pack_real_uint16(x, d) \
53
+ do { \
54
+ if(d < (1<<7)) { \
55
+ /* fixnum */ \
56
+ msgpack_pack_append_buffer(x, &TAKE8_16(d), 1); \
57
+ } else if(d < (1<<8)) { \
58
+ /* unsigned 8 */ \
59
+ unsigned char buf[2] = {0xcc, TAKE8_16(d)}; \
60
+ msgpack_pack_append_buffer(x, buf, 2); \
61
+ } else { \
62
+ /* unsigned 16 */ \
63
+ unsigned char buf[3]; \
64
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
65
+ msgpack_pack_append_buffer(x, buf, 3); \
66
+ } \
67
+ } while(0)
68
+
69
+ #define msgpack_pack_real_uint32(x, d) \
70
+ do { \
71
+ if(d < (1<<8)) { \
72
+ if(d < (1<<7)) { \
73
+ /* fixnum */ \
74
+ msgpack_pack_append_buffer(x, &TAKE8_32(d), 1); \
75
+ } else { \
76
+ /* unsigned 8 */ \
77
+ unsigned char buf[2] = {0xcc, TAKE8_32(d)}; \
78
+ msgpack_pack_append_buffer(x, buf, 2); \
79
+ } \
80
+ } else { \
81
+ if(d < (1<<16)) { \
82
+ /* unsigned 16 */ \
83
+ unsigned char buf[3]; \
84
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
85
+ msgpack_pack_append_buffer(x, buf, 3); \
86
+ } else { \
87
+ /* unsigned 32 */ \
88
+ unsigned char buf[5]; \
89
+ buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \
90
+ msgpack_pack_append_buffer(x, buf, 5); \
91
+ } \
92
+ } \
93
+ } while(0)
94
+
95
+ #define msgpack_pack_real_uint64(x, d) \
96
+ do { \
97
+ if(d < (1ULL<<8)) { \
98
+ if(d < (1ULL<<7)) { \
99
+ /* fixnum */ \
100
+ msgpack_pack_append_buffer(x, &TAKE8_64(d), 1); \
101
+ } else { \
102
+ /* unsigned 8 */ \
103
+ unsigned char buf[2] = {0xcc, TAKE8_64(d)}; \
104
+ msgpack_pack_append_buffer(x, buf, 2); \
105
+ } \
106
+ } else { \
107
+ if(d < (1ULL<<16)) { \
108
+ /* unsigned 16 */ \
109
+ unsigned char buf[3]; \
110
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
111
+ msgpack_pack_append_buffer(x, buf, 3); \
112
+ } else if(d < (1ULL<<32)) { \
113
+ /* unsigned 32 */ \
114
+ unsigned char buf[5]; \
115
+ buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \
116
+ msgpack_pack_append_buffer(x, buf, 5); \
117
+ } else { \
118
+ /* unsigned 64 */ \
119
+ unsigned char buf[9]; \
120
+ buf[0] = 0xcf; _msgpack_store64(&buf[1], d); \
121
+ msgpack_pack_append_buffer(x, buf, 9); \
122
+ } \
123
+ } \
124
+ } while(0)
125
+
126
+ #define msgpack_pack_real_int8(x, d) \
127
+ do { \
128
+ if(d < -(1<<5)) { \
129
+ /* signed 8 */ \
130
+ unsigned char buf[2] = {0xd0, TAKE8_8(d)}; \
131
+ msgpack_pack_append_buffer(x, buf, 2); \
132
+ } else { \
133
+ /* fixnum */ \
134
+ msgpack_pack_append_buffer(x, &TAKE8_8(d), 1); \
135
+ } \
136
+ } while(0)
137
+
138
+ #define msgpack_pack_real_int16(x, d) \
139
+ do { \
140
+ if(d < -(1<<5)) { \
141
+ if(d < -(1<<7)) { \
142
+ /* signed 16 */ \
143
+ unsigned char buf[3]; \
144
+ buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \
145
+ msgpack_pack_append_buffer(x, buf, 3); \
146
+ } else { \
147
+ /* signed 8 */ \
148
+ unsigned char buf[2] = {0xd0, TAKE8_16(d)}; \
149
+ msgpack_pack_append_buffer(x, buf, 2); \
150
+ } \
151
+ } else if(d < (1<<7)) { \
152
+ /* fixnum */ \
153
+ msgpack_pack_append_buffer(x, &TAKE8_16(d), 1); \
154
+ } else { \
155
+ if(d < (1<<8)) { \
156
+ /* unsigned 8 */ \
157
+ unsigned char buf[2] = {0xcc, TAKE8_16(d)}; \
158
+ msgpack_pack_append_buffer(x, buf, 2); \
159
+ } else { \
160
+ /* unsigned 16 */ \
161
+ unsigned char buf[3]; \
162
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
163
+ msgpack_pack_append_buffer(x, buf, 3); \
164
+ } \
165
+ } \
166
+ } while(0)
167
+
168
+ #define msgpack_pack_real_int32(x, d) \
169
+ do { \
170
+ if(d < -(1<<5)) { \
171
+ if(d < -(1<<15)) { \
172
+ /* signed 32 */ \
173
+ unsigned char buf[5]; \
174
+ buf[0] = 0xd2; _msgpack_store32(&buf[1], (int32_t)d); \
175
+ msgpack_pack_append_buffer(x, buf, 5); \
176
+ } else if(d < -(1<<7)) { \
177
+ /* signed 16 */ \
178
+ unsigned char buf[3]; \
179
+ buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \
180
+ msgpack_pack_append_buffer(x, buf, 3); \
181
+ } else { \
182
+ /* signed 8 */ \
183
+ unsigned char buf[2] = {0xd0, TAKE8_32(d)}; \
184
+ msgpack_pack_append_buffer(x, buf, 2); \
185
+ } \
186
+ } else if(d < (1<<7)) { \
187
+ /* fixnum */ \
188
+ msgpack_pack_append_buffer(x, &TAKE8_32(d), 1); \
189
+ } else { \
190
+ if(d < (1<<8)) { \
191
+ /* unsigned 8 */ \
192
+ unsigned char buf[2] = {0xcc, TAKE8_32(d)}; \
193
+ msgpack_pack_append_buffer(x, buf, 2); \
194
+ } else if(d < (1<<16)) { \
195
+ /* unsigned 16 */ \
196
+ unsigned char buf[3]; \
197
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
198
+ msgpack_pack_append_buffer(x, buf, 3); \
199
+ } else { \
200
+ /* unsigned 32 */ \
201
+ unsigned char buf[5]; \
202
+ buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \
203
+ msgpack_pack_append_buffer(x, buf, 5); \
204
+ } \
205
+ } \
206
+ } while(0)
207
+
208
+ #define msgpack_pack_real_int64(x, d) \
209
+ do { \
210
+ if(d < -(1LL<<5)) { \
211
+ if(d < -(1LL<<15)) { \
212
+ if(d < -(1LL<<31)) { \
213
+ /* signed 64 */ \
214
+ unsigned char buf[9]; \
215
+ buf[0] = 0xd3; _msgpack_store64(&buf[1], d); \
216
+ msgpack_pack_append_buffer(x, buf, 9); \
217
+ } else { \
218
+ /* signed 32 */ \
219
+ unsigned char buf[5]; \
220
+ buf[0] = 0xd2; _msgpack_store32(&buf[1], (int32_t)d); \
221
+ msgpack_pack_append_buffer(x, buf, 5); \
222
+ } \
223
+ } else { \
224
+ if(d < -(1<<7)) { \
225
+ /* signed 16 */ \
226
+ unsigned char buf[3]; \
227
+ buf[0] = 0xd1; _msgpack_store16(&buf[1], (int16_t)d); \
228
+ msgpack_pack_append_buffer(x, buf, 3); \
229
+ } else { \
230
+ /* signed 8 */ \
231
+ unsigned char buf[2] = {0xd0, TAKE8_64(d)}; \
232
+ msgpack_pack_append_buffer(x, buf, 2); \
233
+ } \
234
+ } \
235
+ } else if(d < (1<<7)) { \
236
+ /* fixnum */ \
237
+ msgpack_pack_append_buffer(x, &TAKE8_64(d), 1); \
238
+ } else { \
239
+ if(d < (1LL<<16)) { \
240
+ if(d < (1<<8)) { \
241
+ /* unsigned 8 */ \
242
+ unsigned char buf[2] = {0xcc, TAKE8_64(d)}; \
243
+ msgpack_pack_append_buffer(x, buf, 2); \
244
+ } else { \
245
+ /* unsigned 16 */ \
246
+ unsigned char buf[3]; \
247
+ buf[0] = 0xcd; _msgpack_store16(&buf[1], (uint16_t)d); \
248
+ msgpack_pack_append_buffer(x, buf, 3); \
249
+ } \
250
+ } else { \
251
+ if(d < (1LL<<32)) { \
252
+ /* unsigned 32 */ \
253
+ unsigned char buf[5]; \
254
+ buf[0] = 0xce; _msgpack_store32(&buf[1], (uint32_t)d); \
255
+ msgpack_pack_append_buffer(x, buf, 5); \
256
+ } else { \
257
+ /* unsigned 64 */ \
258
+ unsigned char buf[9]; \
259
+ buf[0] = 0xcf; _msgpack_store64(&buf[1], d); \
260
+ msgpack_pack_append_buffer(x, buf, 9); \
261
+ } \
262
+ } \
263
+ } \
264
+ } while(0)
265
+
266
+
267
+ static inline int msgpack_pack_uint8(msgpack_packer* x, uint8_t d)
268
+ {
269
+ msgpack_pack_real_uint8(x, d);
270
+ }
271
+
272
+ static inline int msgpack_pack_uint16(msgpack_packer* x, uint16_t d)
273
+ {
274
+ msgpack_pack_real_uint16(x, d);
275
+ }
276
+
277
+ static inline int msgpack_pack_uint32(msgpack_packer* x, uint32_t d)
278
+ {
279
+ msgpack_pack_real_uint32(x, d);
280
+ }
281
+
282
+ static inline int msgpack_pack_uint64(msgpack_packer* x, uint64_t d)
283
+ {
284
+ msgpack_pack_real_uint64(x, d);
285
+ }
286
+
287
+ static inline int msgpack_pack_int8(msgpack_packer* x, int8_t d)
288
+ {
289
+ msgpack_pack_real_int8(x, d);
290
+ }
291
+
292
+ static inline int msgpack_pack_int16(msgpack_packer* x, int16_t d)
293
+ {
294
+ msgpack_pack_real_int16(x, d);
295
+ }
296
+
297
+ static inline int msgpack_pack_int32(msgpack_packer* x, int32_t d)
298
+ {
299
+ msgpack_pack_real_int32(x, d);
300
+ }
301
+
302
+ static inline int msgpack_pack_int64(msgpack_packer* x, int64_t d)
303
+ {
304
+ msgpack_pack_real_int64(x, d);
305
+ }
306
+
307
+
308
+ //#ifdef msgpack_pack_inline_func_cint
309
+
310
+ static inline int msgpack_pack_short(msgpack_packer* x, short d)
311
+ {
312
+ #if defined(SIZEOF_SHORT)
313
+ #if SIZEOF_SHORT == 2
314
+ msgpack_pack_real_int16(x, d);
315
+ #elif SIZEOF_SHORT == 4
316
+ msgpack_pack_real_int32(x, d);
317
+ #else
318
+ msgpack_pack_real_int64(x, d);
319
+ #endif
320
+
321
+ #elif defined(SHRT_MAX)
322
+ #if SHRT_MAX == 0x7fff
323
+ msgpack_pack_real_int16(x, d);
324
+ #elif SHRT_MAX == 0x7fffffff
325
+ msgpack_pack_real_int32(x, d);
326
+ #else
327
+ msgpack_pack_real_int64(x, d);
328
+ #endif
329
+
330
+ #else
331
+ if(sizeof(short) == 2) {
332
+ msgpack_pack_real_int16(x, d);
333
+ } else if(sizeof(short) == 4) {
334
+ msgpack_pack_real_int32(x, d);
335
+ } else {
336
+ msgpack_pack_real_int64(x, d);
337
+ }
338
+ #endif
339
+ }
340
+
341
+ static inline int msgpack_pack_int(msgpack_packer* x, int d)
342
+ {
343
+ #if defined(SIZEOF_INT)
344
+ #if SIZEOF_INT == 2
345
+ msgpack_pack_real_int16(x, d);
346
+ #elif SIZEOF_INT == 4
347
+ msgpack_pack_real_int32(x, d);
348
+ #else
349
+ msgpack_pack_real_int64(x, d);
350
+ #endif
351
+
352
+ #elif defined(INT_MAX)
353
+ #if INT_MAX == 0x7fff
354
+ msgpack_pack_real_int16(x, d);
355
+ #elif INT_MAX == 0x7fffffff
356
+ msgpack_pack_real_int32(x, d);
357
+ #else
358
+ msgpack_pack_real_int64(x, d);
359
+ #endif
360
+
361
+ #else
362
+ if(sizeof(int) == 2) {
363
+ msgpack_pack_real_int16(x, d);
364
+ } else if(sizeof(int) == 4) {
365
+ msgpack_pack_real_int32(x, d);
366
+ } else {
367
+ msgpack_pack_real_int64(x, d);
368
+ }
369
+ #endif
370
+ }
371
+
372
+ static inline int msgpack_pack_long(msgpack_packer* x, long d)
373
+ {
374
+ #if defined(SIZEOF_LONG)
375
+ #if SIZEOF_LONG == 2
376
+ msgpack_pack_real_int16(x, d);
377
+ #elif SIZEOF_LONG == 4
378
+ msgpack_pack_real_int32(x, d);
379
+ #else
380
+ msgpack_pack_real_int64(x, d);
381
+ #endif
382
+
383
+ #elif defined(LONG_MAX)
384
+ #if LONG_MAX == 0x7fffL
385
+ msgpack_pack_real_int16(x, d);
386
+ #elif LONG_MAX == 0x7fffffffL
387
+ msgpack_pack_real_int32(x, d);
388
+ #else
389
+ msgpack_pack_real_int64(x, d);
390
+ #endif
391
+
392
+ #else
393
+ if(sizeof(long) == 2) {
394
+ msgpack_pack_real_int16(x, d);
395
+ } else if(sizeof(long) == 4) {
396
+ msgpack_pack_real_int32(x, d);
397
+ } else {
398
+ msgpack_pack_real_int64(x, d);
399
+ }
400
+ #endif
401
+ }
402
+
403
+ static inline int msgpack_pack_long_long(msgpack_packer* x, long long d)
404
+ {
405
+ #if defined(SIZEOF_LONG_LONG)
406
+ #if SIZEOF_LONG_LONG == 2
407
+ msgpack_pack_real_int16(x, d);
408
+ #elif SIZEOF_LONG_LONG == 4
409
+ msgpack_pack_real_int32(x, d);
410
+ #else
411
+ msgpack_pack_real_int64(x, d);
412
+ #endif
413
+
414
+ #elif defined(LLONG_MAX)
415
+ #if LLONG_MAX == 0x7fffL
416
+ msgpack_pack_real_int16(x, d);
417
+ #elif LLONG_MAX == 0x7fffffffL
418
+ msgpack_pack_real_int32(x, d);
419
+ #else
420
+ msgpack_pack_real_int64(x, d);
421
+ #endif
422
+
423
+ #else
424
+ if(sizeof(long long) == 2) {
425
+ msgpack_pack_real_int16(x, d);
426
+ } else if(sizeof(long long) == 4) {
427
+ msgpack_pack_real_int32(x, d);
428
+ } else {
429
+ msgpack_pack_real_int64(x, d);
430
+ }
431
+ #endif
432
+ }
433
+
434
+ static inline int msgpack_pack_unsigned_short(msgpack_packer* x, unsigned short d)
435
+ {
436
+ #if defined(SIZEOF_SHORT)
437
+ #if SIZEOF_SHORT == 2
438
+ msgpack_pack_real_uint16(x, d);
439
+ #elif SIZEOF_SHORT == 4
440
+ msgpack_pack_real_uint32(x, d);
441
+ #else
442
+ msgpack_pack_real_uint64(x, d);
443
+ #endif
444
+
445
+ #elif defined(USHRT_MAX)
446
+ #if USHRT_MAX == 0xffffU
447
+ msgpack_pack_real_uint16(x, d);
448
+ #elif USHRT_MAX == 0xffffffffU
449
+ msgpack_pack_real_uint32(x, d);
450
+ #else
451
+ msgpack_pack_real_uint64(x, d);
452
+ #endif
453
+
454
+ #else
455
+ if(sizeof(unsigned short) == 2) {
456
+ msgpack_pack_real_uint16(x, d);
457
+ } else if(sizeof(unsigned short) == 4) {
458
+ msgpack_pack_real_uint32(x, d);
459
+ } else {
460
+ msgpack_pack_real_uint64(x, d);
461
+ }
462
+ #endif
463
+ }
464
+
465
+ static inline int msgpack_pack_unsigned_int(msgpack_packer* x, unsigned int d)
466
+ {
467
+ #if defined(SIZEOF_INT)
468
+ #if SIZEOF_INT == 2
469
+ msgpack_pack_real_uint16(x, d);
470
+ #elif SIZEOF_INT == 4
471
+ msgpack_pack_real_uint32(x, d);
472
+ #else
473
+ msgpack_pack_real_uint64(x, d);
474
+ #endif
475
+
476
+ #elif defined(UINT_MAX)
477
+ #if UINT_MAX == 0xffffU
478
+ msgpack_pack_real_uint16(x, d);
479
+ #elif UINT_MAX == 0xffffffffU
480
+ msgpack_pack_real_uint32(x, d);
481
+ #else
482
+ msgpack_pack_real_uint64(x, d);
483
+ #endif
484
+
485
+ #else
486
+ if(sizeof(unsigned int) == 2) {
487
+ msgpack_pack_real_uint16(x, d);
488
+ } else if(sizeof(unsigned int) == 4) {
489
+ msgpack_pack_real_uint32(x, d);
490
+ } else {
491
+ msgpack_pack_real_uint64(x, d);
492
+ }
493
+ #endif
494
+ }
495
+
496
+ static inline int msgpack_pack_unsigned_long(msgpack_packer* x, unsigned long d)
497
+ {
498
+ #if defined(SIZEOF_LONG)
499
+ #if SIZEOF_LONG == 2
500
+ msgpack_pack_real_uint16(x, d);
501
+ #elif SIZEOF_LONG == 4
502
+ msgpack_pack_real_uint32(x, d);
503
+ #else
504
+ msgpack_pack_real_uint64(x, d);
505
+ #endif
506
+
507
+ #elif defined(ULONG_MAX)
508
+ #if ULONG_MAX == 0xffffUL
509
+ msgpack_pack_real_uint16(x, d);
510
+ #elif ULONG_MAX == 0xffffffffUL
511
+ msgpack_pack_real_uint32(x, d);
512
+ #else
513
+ msgpack_pack_real_uint64(x, d);
514
+ #endif
515
+
516
+ #else
517
+ if(sizeof(unsigned long) == 2) {
518
+ msgpack_pack_real_uint16(x, d);
519
+ } else if(sizeof(unsigned long) == 4) {
520
+ msgpack_pack_real_uint32(x, d);
521
+ } else {
522
+ msgpack_pack_real_uint64(x, d);
523
+ }
524
+ #endif
525
+ }
526
+
527
+ static inline int msgpack_pack_unsigned_long_long(msgpack_packer* x, unsigned long long d)
528
+ {
529
+ #if defined(SIZEOF_LONG_LONG)
530
+ #if SIZEOF_LONG_LONG == 2
531
+ msgpack_pack_real_uint16(x, d);
532
+ #elif SIZEOF_LONG_LONG == 4
533
+ msgpack_pack_real_uint32(x, d);
534
+ #else
535
+ msgpack_pack_real_uint64(x, d);
536
+ #endif
537
+
538
+ #elif defined(ULLONG_MAX)
539
+ #if ULLONG_MAX == 0xffffUL
540
+ msgpack_pack_real_uint16(x, d);
541
+ #elif ULLONG_MAX == 0xffffffffUL
542
+ msgpack_pack_real_uint32(x, d);
543
+ #else
544
+ msgpack_pack_real_uint64(x, d);
545
+ #endif
546
+
547
+ #else
548
+ if(sizeof(unsigned long long) == 2) {
549
+ msgpack_pack_real_uint16(x, d);
550
+ } else if(sizeof(unsigned long long) == 4) {
551
+ msgpack_pack_real_uint32(x, d);
552
+ } else {
553
+ msgpack_pack_real_uint64(x, d);
554
+ }
555
+ #endif
556
+ }
557
+
558
+ //#undef msgpack_pack_inline_func_cint
559
+ //#endif
560
+
561
+
562
+
563
+ /*
564
+ * Float
565
+ */
566
+
567
+ static inline int msgpack_pack_float(msgpack_packer* x, float d)
568
+ {
569
+ unsigned char buf[5];
570
+ buf[0] = 0xca;
571
+
572
+ #if PY_VERSION_HEX >= 0x030B00A7
573
+ PyFloat_Pack4(d, (char *)&buf[1], 0);
574
+ #else
575
+ _PyFloat_Pack4(d, &buf[1], 0);
576
+ #endif
577
+ msgpack_pack_append_buffer(x, buf, 5);
578
+ }
579
+
580
+ static inline int msgpack_pack_double(msgpack_packer* x, double d)
581
+ {
582
+ unsigned char buf[9];
583
+ buf[0] = 0xcb;
584
+ #if PY_VERSION_HEX >= 0x030B00A7
585
+ PyFloat_Pack8(d, (char *)&buf[1], 0);
586
+ #else
587
+ _PyFloat_Pack8(d, &buf[1], 0);
588
+ #endif
589
+ msgpack_pack_append_buffer(x, buf, 9);
590
+ }
591
+
592
+
593
+ /*
594
+ * Nil
595
+ */
596
+
597
+ static inline int msgpack_pack_nil(msgpack_packer* x)
598
+ {
599
+ static const unsigned char d = 0xc0;
600
+ msgpack_pack_append_buffer(x, &d, 1);
601
+ }
602
+
603
+
604
+ /*
605
+ * Boolean
606
+ */
607
+
608
+ static inline int msgpack_pack_true(msgpack_packer* x)
609
+ {
610
+ static const unsigned char d = 0xc3;
611
+ msgpack_pack_append_buffer(x, &d, 1);
612
+ }
613
+
614
+ static inline int msgpack_pack_false(msgpack_packer* x)
615
+ {
616
+ static const unsigned char d = 0xc2;
617
+ msgpack_pack_append_buffer(x, &d, 1);
618
+ }
619
+
620
+
621
+ /*
622
+ * Array
623
+ */
624
+
625
+ static inline int msgpack_pack_array(msgpack_packer* x, unsigned int n)
626
+ {
627
+ if(n < 16) {
628
+ unsigned char d = 0x90 | n;
629
+ msgpack_pack_append_buffer(x, &d, 1);
630
+ } else if(n < 65536) {
631
+ unsigned char buf[3];
632
+ buf[0] = 0xdc; _msgpack_store16(&buf[1], (uint16_t)n);
633
+ msgpack_pack_append_buffer(x, buf, 3);
634
+ } else {
635
+ unsigned char buf[5];
636
+ buf[0] = 0xdd; _msgpack_store32(&buf[1], (uint32_t)n);
637
+ msgpack_pack_append_buffer(x, buf, 5);
638
+ }
639
+ }
640
+
641
+
642
+ /*
643
+ * Map
644
+ */
645
+
646
+ static inline int msgpack_pack_map(msgpack_packer* x, unsigned int n)
647
+ {
648
+ if(n < 16) {
649
+ unsigned char d = 0x80 | n;
650
+ msgpack_pack_append_buffer(x, &TAKE8_8(d), 1);
651
+ } else if(n < 65536) {
652
+ unsigned char buf[3];
653
+ buf[0] = 0xde; _msgpack_store16(&buf[1], (uint16_t)n);
654
+ msgpack_pack_append_buffer(x, buf, 3);
655
+ } else {
656
+ unsigned char buf[5];
657
+ buf[0] = 0xdf; _msgpack_store32(&buf[1], (uint32_t)n);
658
+ msgpack_pack_append_buffer(x, buf, 5);
659
+ }
660
+ }
661
+
662
+
663
+ /*
664
+ * Raw
665
+ */
666
+
667
+ static inline int msgpack_pack_raw(msgpack_packer* x, size_t l)
668
+ {
669
+ if (l < 32) {
670
+ unsigned char d = 0xa0 | (uint8_t)l;
671
+ msgpack_pack_append_buffer(x, &TAKE8_8(d), 1);
672
+ } else if (x->use_bin_type && l < 256) { // str8 is new format introduced with bin.
673
+ unsigned char buf[2] = {0xd9, (uint8_t)l};
674
+ msgpack_pack_append_buffer(x, buf, 2);
675
+ } else if (l < 65536) {
676
+ unsigned char buf[3];
677
+ buf[0] = 0xda; _msgpack_store16(&buf[1], (uint16_t)l);
678
+ msgpack_pack_append_buffer(x, buf, 3);
679
+ } else {
680
+ unsigned char buf[5];
681
+ buf[0] = 0xdb; _msgpack_store32(&buf[1], (uint32_t)l);
682
+ msgpack_pack_append_buffer(x, buf, 5);
683
+ }
684
+ }
685
+
686
+ /*
687
+ * bin
688
+ */
689
+ static inline int msgpack_pack_bin(msgpack_packer *x, size_t l)
690
+ {
691
+ if (!x->use_bin_type) {
692
+ return msgpack_pack_raw(x, l);
693
+ }
694
+ if (l < 256) {
695
+ unsigned char buf[2] = {0xc4, (unsigned char)l};
696
+ msgpack_pack_append_buffer(x, buf, 2);
697
+ } else if (l < 65536) {
698
+ unsigned char buf[3] = {0xc5};
699
+ _msgpack_store16(&buf[1], (uint16_t)l);
700
+ msgpack_pack_append_buffer(x, buf, 3);
701
+ } else {
702
+ unsigned char buf[5] = {0xc6};
703
+ _msgpack_store32(&buf[1], (uint32_t)l);
704
+ msgpack_pack_append_buffer(x, buf, 5);
705
+ }
706
+ }
707
+
708
+ static inline int msgpack_pack_raw_body(msgpack_packer* x, const void* b, size_t l)
709
+ {
710
+ if (l > 0) msgpack_pack_append_buffer(x, (const unsigned char*)b, l);
711
+ return 0;
712
+ }
713
+
714
+ /*
715
+ * Ext
716
+ */
717
+ static inline int msgpack_pack_ext(msgpack_packer* x, char typecode, size_t l)
718
+ {
719
+ if (l == 1) {
720
+ unsigned char buf[2];
721
+ buf[0] = 0xd4;
722
+ buf[1] = (unsigned char)typecode;
723
+ msgpack_pack_append_buffer(x, buf, 2);
724
+ }
725
+ else if(l == 2) {
726
+ unsigned char buf[2];
727
+ buf[0] = 0xd5;
728
+ buf[1] = (unsigned char)typecode;
729
+ msgpack_pack_append_buffer(x, buf, 2);
730
+ }
731
+ else if(l == 4) {
732
+ unsigned char buf[2];
733
+ buf[0] = 0xd6;
734
+ buf[1] = (unsigned char)typecode;
735
+ msgpack_pack_append_buffer(x, buf, 2);
736
+ }
737
+ else if(l == 8) {
738
+ unsigned char buf[2];
739
+ buf[0] = 0xd7;
740
+ buf[1] = (unsigned char)typecode;
741
+ msgpack_pack_append_buffer(x, buf, 2);
742
+ }
743
+ else if(l == 16) {
744
+ unsigned char buf[2];
745
+ buf[0] = 0xd8;
746
+ buf[1] = (unsigned char)typecode;
747
+ msgpack_pack_append_buffer(x, buf, 2);
748
+ }
749
+ else if(l < 256) {
750
+ unsigned char buf[3];
751
+ buf[0] = 0xc7;
752
+ buf[1] = l;
753
+ buf[2] = (unsigned char)typecode;
754
+ msgpack_pack_append_buffer(x, buf, 3);
755
+ } else if(l < 65536) {
756
+ unsigned char buf[4];
757
+ buf[0] = 0xc8;
758
+ _msgpack_store16(&buf[1], (uint16_t)l);
759
+ buf[3] = (unsigned char)typecode;
760
+ msgpack_pack_append_buffer(x, buf, 4);
761
+ } else {
762
+ unsigned char buf[6];
763
+ buf[0] = 0xc9;
764
+ _msgpack_store32(&buf[1], (uint32_t)l);
765
+ buf[5] = (unsigned char)typecode;
766
+ msgpack_pack_append_buffer(x, buf, 6);
767
+ }
768
+
769
+ }
770
+
771
+ /*
772
+ * Pack Timestamp extension type. Follows msgpack-c pack_template.h.
773
+ */
774
+ static inline int msgpack_pack_timestamp(msgpack_packer* x, int64_t seconds, uint32_t nanoseconds)
775
+ {
776
+ if ((seconds >> 34) == 0) {
777
+ /* seconds is unsigned and fits in 34 bits */
778
+ uint64_t data64 = ((uint64_t)nanoseconds << 34) | (uint64_t)seconds;
779
+ if ((data64 & 0xffffffff00000000L) == 0) {
780
+ /* no nanoseconds and seconds is 32bits or smaller. timestamp32. */
781
+ unsigned char buf[4];
782
+ uint32_t data32 = (uint32_t)data64;
783
+ msgpack_pack_ext(x, -1, 4);
784
+ _msgpack_store32(buf, data32);
785
+ msgpack_pack_raw_body(x, buf, 4);
786
+ } else {
787
+ /* timestamp64 */
788
+ unsigned char buf[8];
789
+ msgpack_pack_ext(x, -1, 8);
790
+ _msgpack_store64(buf, data64);
791
+ msgpack_pack_raw_body(x, buf, 8);
792
+
793
+ }
794
+ } else {
795
+ /* seconds is signed or >34bits */
796
+ unsigned char buf[12];
797
+ _msgpack_store32(&buf[0], nanoseconds);
798
+ _msgpack_store64(&buf[4], seconds);
799
+ msgpack_pack_ext(x, -1, 12);
800
+ msgpack_pack_raw_body(x, buf, 12);
801
+ }
802
+ return 0;
803
+ }
804
+
805
+
806
+ #undef msgpack_pack_append_buffer
807
+
808
+ #undef TAKE8_8
809
+ #undef TAKE8_16
810
+ #undef TAKE8_32
811
+ #undef TAKE8_64
812
+
813
+ #undef msgpack_pack_real_uint8
814
+ #undef msgpack_pack_real_uint16
815
+ #undef msgpack_pack_real_uint32
816
+ #undef msgpack_pack_real_uint64
817
+ #undef msgpack_pack_real_int8
818
+ #undef msgpack_pack_real_int16
819
+ #undef msgpack_pack_real_int32
820
+ #undef msgpack_pack_real_int64