Commit Graph

310 Commits

Author SHA1 Message Date
Eduardo Silva da46fb1ef7 test: c: add test for new msgpack_unpacker_next_with_size()
Signed-off-by: Eduardo Silva <eduardo@treasure-data.com>
2016-09-07 16:24:52 -06:00
Takatoshi Kondo 5d69c22bf9 Use OR instead of AND for all classes that have multiple types.
Revert example. Combination of has_as and not has_as are move to tests.
2016-08-29 22:12:01 +09:00
Takatoshi Kondo 73af452ed8 Fixed #507.
Removed -Wno-mismatched-tags option from g++.
g++ doesn't support the option and doesn't care the mismatch originally.
2016-07-29 19:49:53 +09:00
Takatoshi Kondo 523e986077 Added size_equal_only support for C++03 msgpack::type::tuple. 2016-06-20 18:39:04 +09:00
Takatoshi Kondo 90c2e35694 Fixed warnings on clang on OSX. 2016-06-20 17:30:51 +09:00
Takatoshi Kondo 4ffdc01135 Added converting support for different size tuples. 2016-06-20 17:12:53 +09:00
Takatoshi Kondo 1b87018a0a Fixed #390.
Added size_equal_only class template to check converted container size
strictly.
Relaxed std::array size checking by default.
Fixed std::tuple and msgpack::type::tuple size checking problem.
2016-06-20 15:32:24 +09:00
Takatoshi Kondo 20e777c1fa Merge pull request #487 from ys-nuem/support-mingw
Add missing platform detection in examples/test
2016-06-19 18:55:43 +09:00
Yusuke Sasaki b4c4c213b1 Add missing platform detection in examples/test 2016-06-18 03:38:42 +09:00
Takatoshi Kondo 0f66e144ab Support MSVC cli.
MSVC CLI defined their own nullptr and provides for __nullptr for standard C++11.
https://msdn.microsoft.com/en-us/library/4ex65770.aspx
msgpack-c introduce MSGPACK_NULLPTR for internal use, it is defined as __nullptr only if compiled on C++ CLI otherwise defined as nullptr.
2016-06-08 18:03:51 +09:00
Takatoshi Kondo 4ee616bbde Removed autotools and msvc files.
Please use cmake.
2016-06-05 21:54:59 +09:00
Takatoshi Kondo 22613d4dd0 Merge pull request #464 from redboltz/fix_463
Fixed #463.
2016-05-24 08:22:50 +09:00
Takatoshi Kondo d15d9220ff Merge pull request #461 from redboltz/add_unpack_visitor_api
Added a visitor version of unpack API,
2016-05-22 22:50:44 +09:00
Takatoshi Kondo cc02da0ccf Fixed #465
Added C-Style array support.

Existing mapping:
  convert:
  pack:
    char[N]       => STR
    const char[N] => STR
  object:
    char[N]       => STR (v1 only)
    const char[N] => STR (v1 only)
  object_with_zone:
    char[N]       => STR
    const char[N] => STR

Additional mapping:

  convert:
    STR        => char[N]
    ARRAY      => T[N]
  pack:
    T[N]       => ARRAY
    const T[N] => ARRAY
  object:
  object_with_zone:
    T[N]       => ARRAY
    const T[N] => ARRAY
2016-05-16 23:00:30 +09:00
Takatoshi Kondo e6f82cf2bb Fixed #463.
Added lacked include files.
Added a test.
Added MSVC build settings on appveyor.
Added old MSVC workaround.
Fixed a variable definition point to meet ANSI-C.
2016-05-14 22:05:10 +09:00
Takatoshi Kondo 6593cba284 Fixed end_map_value() calling point.
Renamed names that related to a visitor.
Renamed test name from json to json_like because I omit escape.
Added end_map_value() and end_map() implementation.
2016-05-05 18:44:56 +09:00
Takatoshi Kondo d5b515899c Added a visitor version of unpack API,
The current unpacking APIs are constructed on the visitor mechanism.
(Fixed #418)

Updated test condition.
2016-05-01 21:44:03 +09:00
Takatoshi Kondo db90ee4283 Removed obsolete unpack() API. 2016-03-26 11:46:45 +09:00
Takatoshi Kondo 31a06a0682 Removed obsolete APIs form v2.
Removed MSGPACK_DISABLE_LEGACY_CONVERT from v2. Those APIs are removed
from v2.
2016-03-25 09:16:27 +09:00
Takatoshi Kondo 1bfcf55469 Replaced msgpack::unpacked with msgpack::object_handle.
msgpack::unpacked is a typedef of the msgpack::object_handle.
I recommend using msgpack::object_handle. It can be used not only
holding unpacked msgpack objects but also msgpack::objects that are
created by any types.

Replaced unpack() APIs in test codes and examples. They used to use old
APIs.
2016-03-21 15:22:50 +09:00
Takatoshi Kondo d8e9941fa9 Merge pull request #434 from redboltz/fix_417
Fix 417
2016-03-02 09:56:53 +09:00
Takatoshi Kondo 60d4b2833d Fixed #433.
Added zero size check before calling std::vector<T>::front().
Added empty checking tests for all containers.
2016-02-26 15:08:18 +09:00
Takatoshi Kondo 1244edeaf1 Removed the test that uses msgpack::object with std::string on version 1.x. 2016-02-26 13:52:14 +09:00
Takatoshi Kondo 3c271892e3 Fixed #399
If MSGPACK_DISABLE_LEGACY_CONVERT is defined, msgpack::object::convert(T*) is removed.
Added MSGPACK_DISABLE_LEGACY_CONVERT to build system and documents.

Please define MSGPACK_DISABLE_LEGACY_CONVERT and update your code as follows:
Replace
  int i;
  obj.convert(&i); // Removed pointer version
with
  int i;
  obj.convert(i);  // Reference version
2016-01-21 22:28:53 +09:00
Takatoshi Kondo ba73841240 Added MSGPACK_DISABLE_LEGACY_NIL to build system and documents. 2016-01-21 20:47:16 +09:00
Takatoshi Kondo ed5a4123b5 Replaced nil with nil_t.
Added nil typedef for existing codes.
2016-01-18 22:12:38 +09:00
Takatoshi Kondo c2f523e463 Merge branch 'fix_382' of https://github.com/redboltz/msgpack-c into redboltz-fix_382 2016-01-15 12:44:40 +09:00
Takatoshi Kondo c06d4d70ef Fixed #395
libmsgpack.[a|so] is the library file for C++.
libmsgpackc.[a|so] is the library file for C.
Since version 1.0.0, the C++ parts of msgpack-c is a header only
library. So libmsgpack.* shouldn't be generated.

On the autotools building environment, removed libmsgpack.*
generation. On the cmake building environment, replaced libmsgpack.*
with libmsgpackc.* and set so-version to 2.0.0.
2016-01-14 07:59:37 +09:00
Takatoshi Kondo ba15089d86 Version 1.3.0.
Updated the license from the license from the Apache License Version 2.0
to the Boost Software License, Version 1.0.
Removed unused files.
2015-11-21 12:41:46 +09:00
Takatoshi Kondo b8ee27c672 Replaced EXPECT_EQ with EXPECT_TRUE to avoid ostream requirement. 2015-11-19 09:22:40 +09:00
Takatoshi Kondo ee65a319ba Replaced EXPECT_EQ with EXPECT_TRUE to avoid ostream requirement. 2015-11-18 08:29:35 +09:00
Takatoshi Kondo 46502480e9 Replaced EXPECT_EQ with EXPECT_TRUE to avoid ostream requirement. 2015-11-15 12:40:37 +09:00
Takatoshi Kondo b76c8aeb83 Merge pull request #384 from jpetso/jpetso_refwrap
Support to-object conversions for std::reference_wrapper<const T>.
2015-11-13 10:23:44 +09:00
Jakob Petsovits b5599ef3fc Support to-object conversions for std::reference_wrapper<const T>.
Previously the conversion would fail because struct object is not
generally provided for the const version of the type, but because
the wrapper would pass down the type unchanged, it would look for
exactly that missing template specialization unsuccessfully.

This is specifically an issue for std::reference_wrapper because
std::cref() returns an std::reference_wrapper<const T>.
2015-11-11 19:40:22 -05:00
Takatoshi Kondo 39e7856c48 Fixed #382.
Fixed warnings on gcc 4.1.2.
Added gcc version checking for adding -std=c++03 flag.
2015-11-12 00:20:21 +09:00
Takatoshi Kondo f58eb11fd5 Merge pull request #380 from whoshuu/expand-buffer-tests
Add tests for expanding an unpacker buffer
2015-11-01 12:02:01 +09:00
Huu Nguyen 434dae8424 Add tests for expanding an unpacker buffer 2015-10-26 23:08:43 -04:00
Huu Nguyen d8dd77884b Add coverage for all free unpack codepaths 2015-10-26 21:27:11 -04:00
Huu Nguyen 6a127eb24f Add test for packing/unpacking nil 2015-10-23 08:49:06 -07:00
Takatoshi Kondo d23a649427 Merge pull request #375 from whoshuu/test-parse-error
Write test case for parse error when unpacking unused 0xc1
2015-10-20 12:50:09 +09:00
Huu Nguyen 282b0b5927 Write test case for parse error when unpacking unused 0xc1 2015-10-18 15:14:38 -04:00
Takatoshi Kondo 20104301f3 Added convert adaptor support. 2015-10-11 12:16:34 +09:00
Takatoshi Kondo 428780db53 Added std::reference_wrapper packing and making object and object_with_zone support.
Fixed #370.
2015-10-09 15:45:29 +09:00
Nobuyuki Kubota 2b38389f68 Add missing files to Makefile.am 2015-09-04 19:18:23 +09:00
Nobuyuki Kubota 356a5ea42d Fix some warnings on OS X 2015-09-04 18:51:53 +09:00
Nobuyuki Kubota 93142323f0 Merge pull request #349 from redboltz/variant
Variant
2015-09-04 18:42:47 +09:00
Nobuyuki Kubota 3352b2f029 Merge pull request #359 from redboltz/fix_243
Fixed #243.
2015-09-04 18:34:19 +09:00
Takatoshi Kondo 96f145812f Fixed #243.
std::vector<unsigned char> and std::array<unsigned char> are mapped to BIN.
std::vector<uint8_t> and std::array<uint8_t> are mapped to BIN if uint8_t is the same type of unsigned char, otherwise mapped to ARRAY.

Added array_ref. When client wraps BIN mapped types above with array_ref as msgpack::type::array_ref<std::vector<char> >, the type is mapped to ARRAY.
2015-08-31 14:06:39 +09:00
Takatoshi Kondo 33de24239a Fixed #357.
Added a conversion member function to msgpack::object.
If msgpack::object is nil then returns false else returns true and sets a value.
2015-08-31 09:05:09 +09:00
Takatoshi Kondo 88ab7b6349 Unified variant and variant_ref to basic_variant.
Added is_* and as_* member functions to basic_variant.
Added tests.
2015-08-30 17:05:04 +09:00