rroonga 1.3.1-x86-mingw32 → 2.0.0-x86-mingw32
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.
- data/Gemfile +1 -1
- data/Rakefile +2 -7
- data/ext/groonga/rb-grn-column.c +34 -37
- data/ext/groonga/rb-grn-context.c +63 -2
- data/ext/groonga/rb-grn-expression.c +21 -13
- data/ext/groonga/rb-grn-object.c +2 -0
- data/ext/groonga/rb-grn-table.c +57 -51
- data/ext/groonga/rb-grn.h +10 -4
- data/lib/1.8/groonga.so +0 -0
- data/lib/1.9/groonga.so +0 -0
- data/lib/groonga/schema.rb +75 -46
- data/lib/groonga.rb +9 -6
- data/rroonga-build.rb +2 -2
- data/test/run-test.rb +1 -2
- data/test/test-table-select.rb +0 -5
- data/test/test-type.rb +2 -2
- data/test/test-version.rb +40 -10
- data/vendor/local/bin/grntest.exe +0 -0
- data/vendor/local/bin/groonga.exe +0 -0
- data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
- data/vendor/local/bin/libgroonga-0.dll +0 -0
- data/vendor/local/bin/libmecab-1.dll +0 -0
- data/vendor/local/bin/libmsgpack-3.dll +0 -0
- data/vendor/local/bin/libmsgpackc-2.dll +0 -0
- data/vendor/local/bin/libstdc++-6.dll +0 -0
- data/vendor/local/bin/mecab.exe +0 -0
- data/vendor/local/include/groonga/groonga/plugin.h +113 -0
- data/vendor/local/include/groonga/groonga/tokenizer.h +146 -0
- data/vendor/local/include/groonga/groonga.h +18 -18
- data/vendor/local/include/msgpack/object.h +98 -0
- data/vendor/local/include/msgpack/object.hpp +412 -0
- data/vendor/local/include/msgpack/pack.h +143 -0
- data/vendor/local/include/msgpack/pack.hpp +318 -0
- data/vendor/local/include/msgpack/pack_define.h +26 -0
- data/vendor/local/include/msgpack/pack_template.h +766 -0
- data/vendor/local/include/msgpack/sbuffer.h +111 -0
- data/vendor/local/include/msgpack/sbuffer.hpp +112 -0
- data/vendor/local/include/msgpack/sysdep.h +195 -0
- data/vendor/local/include/msgpack/type/bool.hpp +55 -0
- data/vendor/local/include/msgpack/type/define.hpp +3279 -0
- data/vendor/local/include/msgpack/type/deque.hpp +77 -0
- data/vendor/local/include/msgpack/type/fixint.hpp +172 -0
- data/vendor/local/include/msgpack/type/float.hpp +82 -0
- data/vendor/local/include/msgpack/type/int.hpp +211 -0
- data/vendor/local/include/msgpack/type/list.hpp +77 -0
- data/vendor/local/include/msgpack/type/map.hpp +205 -0
- data/vendor/local/include/msgpack/type/nil.hpp +65 -0
- data/vendor/local/include/msgpack/type/pair.hpp +61 -0
- data/vendor/local/include/msgpack/type/raw.hpp +94 -0
- data/vendor/local/include/msgpack/type/set.hpp +122 -0
- data/vendor/local/include/msgpack/type/string.hpp +62 -0
- data/vendor/local/include/msgpack/type/tr1/unordered_map.hpp +129 -0
- data/vendor/local/include/msgpack/type/tr1/unordered_set.hpp +122 -0
- data/vendor/local/include/msgpack/type/tuple.hpp +13691 -0
- data/vendor/local/include/msgpack/type/vector.hpp +81 -0
- data/vendor/local/include/msgpack/type.hpp +16 -0
- data/vendor/local/include/msgpack/unpack.h +260 -0
- data/vendor/local/include/msgpack/unpack.hpp +374 -0
- data/vendor/local/include/msgpack/unpack_define.h +93 -0
- data/vendor/local/include/msgpack/unpack_template.h +409 -0
- data/vendor/local/include/msgpack/version.h +40 -0
- data/vendor/local/include/msgpack/vrefbuffer.h +142 -0
- data/vendor/local/include/msgpack/vrefbuffer.hpp +97 -0
- data/vendor/local/include/msgpack/zbuffer.h +207 -0
- data/vendor/local/include/msgpack/zbuffer.hpp +100 -0
- data/vendor/local/include/msgpack/zone.h +147 -0
- data/vendor/local/include/msgpack/zone.hpp +455 -0
- data/vendor/local/include/msgpack.h +30 -0
- data/vendor/local/include/msgpack.hpp +24 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.a +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.dll +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/suggest/suggest.la +2 -2
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.a +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.dll.a +0 -0
- data/vendor/local/lib/groonga/plugins/tokenizers/mecab.la +2 -2
- data/vendor/local/lib/libgroonga.a +0 -0
- data/vendor/local/lib/libgroonga.dll.a +0 -0
- data/vendor/local/lib/libgroonga.la +2 -2
- data/vendor/local/lib/libmecab.a +0 -0
- data/vendor/local/lib/libmecab.dll.a +0 -0
- data/vendor/local/lib/libmsgpack.a +0 -0
- data/vendor/local/lib/libmsgpack.dll.a +0 -0
- data/vendor/local/lib/libmsgpack.la +41 -0
- data/vendor/local/lib/libmsgpackc.a +0 -0
- data/vendor/local/lib/libmsgpackc.dll.a +0 -0
- data/vendor/local/lib/libmsgpackc.la +41 -0
- data/vendor/local/lib/pkgconfig/groonga.pc +4 -4
- data/vendor/local/libexec/mecab/mecab-cost-train.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-dict-gen.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-dict-index.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-system-eval.exe +0 -0
- data/vendor/local/libexec/mecab/mecab-test-gen.exe +0 -0
- data/vendor/local/share/doc/groonga/en/html/.buildinfo +1 -1
- data/vendor/local/share/doc/groonga/en/html/_sources/commands/suggest.txt +1 -1
- data/vendor/local/share/doc/groonga/en/html/_sources/contribution/report.txt +6 -7
- data/vendor/local/share/doc/groonga/en/html/_sources/indexing.txt +108 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/news/1.2.x.txt +386 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/news.txt +51 -385
- data/vendor/local/share/doc/groonga/en/html/_sources/reference.txt +1 -0
- data/vendor/local/share/doc/groonga/en/html/_sources/spec/search.txt +4 -4
- data/vendor/local/share/doc/groonga/en/html/characteristic.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/command_version.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/cache_limit.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/check.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/clearlock.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/column_create.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/column_list.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/column_remove.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/define_selector.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/defrag.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/delete.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/dump.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/load.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/log_level.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/log_put.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/log_reopen.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/quit.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/select.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/shutdown.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/status.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/suggest.html +7 -7
- data/vendor/local/share/doc/groonga/en/html/commands/table_create.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/table_list.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/table_remove.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands/view_add.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/commands.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/community.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/com.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/document.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/query.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development/test.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/development.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation/c-api.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation/i18n.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/documentation.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/contribution/report.html +9 -9
- data/vendor/local/share/doc/groonga/en/html/contribution.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables/grnslap.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables/grntest.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables/groonga-http.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables/groonga-suggest-create-dataset.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/executables.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/expr.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/edit_distance.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/geo_distance.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/geo_in_circle.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/geo_in_rectangle.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/now.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/functions/rand.html +10 -10
- data/vendor/local/share/doc/groonga/en/html/functions.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/genindex.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/geolocation_search.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/index.html +14 -8
- data/vendor/local/share/doc/groonga/en/html/indexing.html +237 -0
- data/vendor/local/share/doc/groonga/en/html/install.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/limitations.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/log.html +20 -20
- data/vendor/local/share/doc/groonga/en/html/news/0.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.0.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.1.x.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news/1.2.x.html +566 -0
- data/vendor/local/share/doc/groonga/en/html/news/senna.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/news.html +65 -464
- data/vendor/local/share/doc/groonga/en/html/objects.inv +0 -0
- data/vendor/local/share/doc/groonga/en/html/output.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/pseudo_column.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/reference.html +14 -8
- data/vendor/local/share/doc/groonga/en/html/search.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/searchindex.js +1 -1
- data/vendor/local/share/doc/groonga/en/html/spec/search.html +9 -9
- data/vendor/local/share/doc/groonga/en/html/spec.html +9 -9
- data/vendor/local/share/doc/groonga/en/html/suggest/completion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/correction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/suggestion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/suggest.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/troubleshooting/different_results_with_the_same_keyword.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/troubleshooting.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/data.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/drilldown.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/index.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/lexicon.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/match_columns.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/micro_blog.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/network.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/patricia_trie.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/query_expansion.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial/search.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/en/html/type.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/.buildinfo +1 -1
- data/vendor/local/share/doc/groonga/ja/html/_sources/commands/suggest.txt +1 -1
- data/vendor/local/share/doc/groonga/ja/html/_sources/contribution/report.txt +6 -7
- data/vendor/local/share/doc/groonga/ja/html/_sources/indexing.txt +108 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/news/1.2.x.txt +386 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/news.txt +51 -385
- data/vendor/local/share/doc/groonga/ja/html/_sources/reference.txt +1 -0
- data/vendor/local/share/doc/groonga/ja/html/_sources/spec/search.txt +4 -4
- data/vendor/local/share/doc/groonga/ja/html/characteristic.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/command_version.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/cache_limit.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/check.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/clearlock.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/column_create.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/column_list.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/column_remove.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/define_selector.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/defrag.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/delete.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/dump.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/load.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/log_level.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/log_put.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/log_reopen.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/quit.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/select.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/shutdown.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/status.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/suggest.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/table_create.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/table_list.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/table_remove.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands/view_add.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/commands.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/community.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/com.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/document.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/query.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development/test.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/development.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/c-api.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation/i18n.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/documentation.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/contribution/report.html +6 -6
- data/vendor/local/share/doc/groonga/ja/html/contribution.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables/grnslap.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables/grntest.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables/groonga-http.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables/groonga-suggest-create-dataset.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables/groonga.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/executables.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/expr.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/edit_distance.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/geo_distance.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/geo_in_circle.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/geo_in_rectangle.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/now.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/functions/rand.html +10 -10
- data/vendor/local/share/doc/groonga/ja/html/functions.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/genindex.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/geolocation_search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/index.html +14 -8
- data/vendor/local/share/doc/groonga/ja/html/indexing.html +215 -0
- data/vendor/local/share/doc/groonga/ja/html/install.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/limitations.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/log.html +20 -20
- data/vendor/local/share/doc/groonga/ja/html/news/0.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.0.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.1.x.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news/1.2.x.html +528 -0
- data/vendor/local/share/doc/groonga/ja/html/news/senna.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/news.html +62 -425
- data/vendor/local/share/doc/groonga/ja/html/objects.inv +0 -0
- data/vendor/local/share/doc/groonga/ja/html/output.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/pseudo_column.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/reference.html +14 -8
- data/vendor/local/share/doc/groonga/ja/html/search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/searchindex.js +1 -1
- data/vendor/local/share/doc/groonga/ja/html/spec/search.html +9 -9
- data/vendor/local/share/doc/groonga/ja/html/spec.html +9 -9
- data/vendor/local/share/doc/groonga/ja/html/suggest/completion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/correction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/suggestion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/suggest.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/troubleshooting/different_results_with_the_same_keyword.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/troubleshooting.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/data.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/drilldown.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/index.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/introduction.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/lexicon.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/match_columns.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/micro_blog.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/network.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/patricia_trie.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/query_expansion.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial/search.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/tutorial.html +5 -5
- data/vendor/local/share/doc/groonga/ja/html/type.html +5 -5
- data/vendor/local/share/doc/groonga/source/commands/suggest.txt +1 -1
- data/vendor/local/share/doc/groonga/source/contribution/report.txt +6 -7
- data/vendor/local/share/doc/groonga/source/indexing.txt +108 -0
- data/vendor/local/share/doc/groonga/source/news/1.2.x.txt +386 -0
- data/vendor/local/share/doc/groonga/source/news.txt +51 -385
- data/vendor/local/share/doc/groonga/source/reference.txt +1 -0
- data/vendor/local/share/doc/groonga/source/spec/search.txt +4 -4
- data/vendor/local/share/license/groonga/COPYING +10 -12
- data/vendor/local/share/license/msgpack/AUTHORS +1 -0
- data/vendor/local/share/license/msgpack/COPYING +14 -0
- data/vendor/local/share/license/msgpack/LICENSE +202 -0
- data/vendor/local/share/man/ja/man1/groonga.1 +113 -5
- data/vendor/local/share/man/man1/groonga.1 +142 -11
- metadata +66 -3
- data/vendor/local/share/doc/groonga/source/update_execution_example.py +0 -141
@@ -0,0 +1,205 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_MAP_HPP__
|
19
|
+
#define MSGPACK_TYPE_MAP_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
#include <map>
|
23
|
+
#include <vector>
|
24
|
+
#include <algorithm>
|
25
|
+
|
26
|
+
namespace msgpack {
|
27
|
+
|
28
|
+
|
29
|
+
namespace type {
|
30
|
+
|
31
|
+
template <typename K, typename V>
|
32
|
+
class assoc_vector : public std::vector< std::pair<K, V> > {};
|
33
|
+
|
34
|
+
namespace detail {
|
35
|
+
template <typename K, typename V>
|
36
|
+
struct pair_first_less {
|
37
|
+
bool operator() (const std::pair<K, V>& x, const std::pair<K, V>& y) const
|
38
|
+
{ return x.first < y.first; }
|
39
|
+
};
|
40
|
+
}
|
41
|
+
|
42
|
+
} //namespace type
|
43
|
+
|
44
|
+
|
45
|
+
template <typename K, typename V>
|
46
|
+
inline type::assoc_vector<K,V>& operator>> (object o, type::assoc_vector<K,V>& v)
|
47
|
+
{
|
48
|
+
if(o.type != type::MAP) { throw type_error(); }
|
49
|
+
v.resize(o.via.map.size);
|
50
|
+
object_kv* p = o.via.map.ptr;
|
51
|
+
object_kv* const pend = o.via.map.ptr + o.via.map.size;
|
52
|
+
std::pair<K, V>* it(&v.front());
|
53
|
+
for(; p < pend; ++p, ++it) {
|
54
|
+
p->key.convert(&it->first);
|
55
|
+
p->val.convert(&it->second);
|
56
|
+
}
|
57
|
+
std::sort(v.begin(), v.end(), type::detail::pair_first_less<K,V>());
|
58
|
+
return v;
|
59
|
+
}
|
60
|
+
|
61
|
+
template <typename Stream, typename K, typename V>
|
62
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const type::assoc_vector<K,V>& v)
|
63
|
+
{
|
64
|
+
o.pack_map(v.size());
|
65
|
+
for(typename type::assoc_vector<K,V>::const_iterator it(v.begin()), it_end(v.end());
|
66
|
+
it != it_end; ++it) {
|
67
|
+
o.pack(it->first);
|
68
|
+
o.pack(it->second);
|
69
|
+
}
|
70
|
+
return o;
|
71
|
+
}
|
72
|
+
|
73
|
+
template <typename K, typename V>
|
74
|
+
inline void operator<< (object::with_zone& o, const type::assoc_vector<K,V>& v)
|
75
|
+
{
|
76
|
+
o.type = type::MAP;
|
77
|
+
if(v.empty()) {
|
78
|
+
o.via.map.ptr = NULL;
|
79
|
+
o.via.map.size = 0;
|
80
|
+
} else {
|
81
|
+
object_kv* p = (object_kv*)o.zone->malloc(sizeof(object_kv)*v.size());
|
82
|
+
object_kv* const pend = p + v.size();
|
83
|
+
o.via.map.ptr = p;
|
84
|
+
o.via.map.size = v.size();
|
85
|
+
typename type::assoc_vector<K,V>::const_iterator it(v.begin());
|
86
|
+
do {
|
87
|
+
p->key = object(it->first, o.zone);
|
88
|
+
p->val = object(it->second, o.zone);
|
89
|
+
++p;
|
90
|
+
++it;
|
91
|
+
} while(p < pend);
|
92
|
+
}
|
93
|
+
}
|
94
|
+
|
95
|
+
|
96
|
+
template <typename K, typename V>
|
97
|
+
inline std::map<K, V> operator>> (object o, std::map<K, V>& v)
|
98
|
+
{
|
99
|
+
if(o.type != type::MAP) { throw type_error(); }
|
100
|
+
object_kv* p(o.via.map.ptr);
|
101
|
+
object_kv* const pend(o.via.map.ptr + o.via.map.size);
|
102
|
+
for(; p != pend; ++p) {
|
103
|
+
K key;
|
104
|
+
p->key.convert(&key);
|
105
|
+
typename std::map<K,V>::iterator it(v.lower_bound(key));
|
106
|
+
if(it != v.end() && !(key < it->first)) {
|
107
|
+
p->val.convert(&it->second);
|
108
|
+
} else {
|
109
|
+
V val;
|
110
|
+
p->val.convert(&val);
|
111
|
+
v.insert(it, std::pair<K,V>(key, val));
|
112
|
+
}
|
113
|
+
}
|
114
|
+
return v;
|
115
|
+
}
|
116
|
+
|
117
|
+
template <typename Stream, typename K, typename V>
|
118
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::map<K,V>& v)
|
119
|
+
{
|
120
|
+
o.pack_map(v.size());
|
121
|
+
for(typename std::map<K,V>::const_iterator it(v.begin()), it_end(v.end());
|
122
|
+
it != it_end; ++it) {
|
123
|
+
o.pack(it->first);
|
124
|
+
o.pack(it->second);
|
125
|
+
}
|
126
|
+
return o;
|
127
|
+
}
|
128
|
+
|
129
|
+
template <typename K, typename V>
|
130
|
+
inline void operator<< (object::with_zone& o, const std::map<K,V>& v)
|
131
|
+
{
|
132
|
+
o.type = type::MAP;
|
133
|
+
if(v.empty()) {
|
134
|
+
o.via.map.ptr = NULL;
|
135
|
+
o.via.map.size = 0;
|
136
|
+
} else {
|
137
|
+
object_kv* p = (object_kv*)o.zone->malloc(sizeof(object_kv)*v.size());
|
138
|
+
object_kv* const pend = p + v.size();
|
139
|
+
o.via.map.ptr = p;
|
140
|
+
o.via.map.size = v.size();
|
141
|
+
typename std::map<K,V>::const_iterator it(v.begin());
|
142
|
+
do {
|
143
|
+
p->key = object(it->first, o.zone);
|
144
|
+
p->val = object(it->second, o.zone);
|
145
|
+
++p;
|
146
|
+
++it;
|
147
|
+
} while(p < pend);
|
148
|
+
}
|
149
|
+
}
|
150
|
+
|
151
|
+
|
152
|
+
template <typename K, typename V>
|
153
|
+
inline std::multimap<K, V> operator>> (object o, std::multimap<K, V>& v)
|
154
|
+
{
|
155
|
+
if(o.type != type::MAP) { throw type_error(); }
|
156
|
+
object_kv* p(o.via.map.ptr);
|
157
|
+
object_kv* const pend(o.via.map.ptr + o.via.map.size);
|
158
|
+
for(; p != pend; ++p) {
|
159
|
+
std::pair<K, V> value;
|
160
|
+
p->key.convert(&value.first);
|
161
|
+
p->val.convert(&value.second);
|
162
|
+
v.insert(value);
|
163
|
+
}
|
164
|
+
return v;
|
165
|
+
}
|
166
|
+
|
167
|
+
template <typename Stream, typename K, typename V>
|
168
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::multimap<K,V>& v)
|
169
|
+
{
|
170
|
+
o.pack_map(v.size());
|
171
|
+
for(typename std::multimap<K,V>::const_iterator it(v.begin()), it_end(v.end());
|
172
|
+
it != it_end; ++it) {
|
173
|
+
o.pack(it->first);
|
174
|
+
o.pack(it->second);
|
175
|
+
}
|
176
|
+
return o;
|
177
|
+
}
|
178
|
+
|
179
|
+
template <typename K, typename V>
|
180
|
+
inline void operator<< (object::with_zone& o, const std::multimap<K,V>& v)
|
181
|
+
{
|
182
|
+
o.type = type::MAP;
|
183
|
+
if(v.empty()) {
|
184
|
+
o.via.map.ptr = NULL;
|
185
|
+
o.via.map.size = 0;
|
186
|
+
} else {
|
187
|
+
object_kv* p = (object_kv*)o.zone->malloc(sizeof(object_kv)*v.size());
|
188
|
+
object_kv* const pend = p + v.size();
|
189
|
+
o.via.map.ptr = p;
|
190
|
+
o.via.map.size = v.size();
|
191
|
+
typename std::multimap<K,V>::const_iterator it(v.begin());
|
192
|
+
do {
|
193
|
+
p->key = object(it->first, o.zone);
|
194
|
+
p->val = object(it->second, o.zone);
|
195
|
+
++p;
|
196
|
+
++it;
|
197
|
+
} while(p < pend);
|
198
|
+
}
|
199
|
+
}
|
200
|
+
|
201
|
+
|
202
|
+
} // namespace msgpack
|
203
|
+
|
204
|
+
#endif /* msgpack/type/map.hpp */
|
205
|
+
|
@@ -0,0 +1,65 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_NIL_HPP__
|
19
|
+
#define MSGPACK_TYPE_NIL_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
|
23
|
+
namespace msgpack {
|
24
|
+
|
25
|
+
namespace type {
|
26
|
+
|
27
|
+
struct nil { };
|
28
|
+
|
29
|
+
} // namespace type
|
30
|
+
|
31
|
+
|
32
|
+
inline type::nil& operator>> (object o, type::nil& v)
|
33
|
+
{
|
34
|
+
if(o.type != type::NIL) { throw type_error(); }
|
35
|
+
return v;
|
36
|
+
}
|
37
|
+
|
38
|
+
template <typename Stream>
|
39
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const type::nil& v)
|
40
|
+
{
|
41
|
+
o.pack_nil();
|
42
|
+
return o;
|
43
|
+
}
|
44
|
+
|
45
|
+
inline void operator<< (object& o, type::nil v)
|
46
|
+
{
|
47
|
+
o.type = type::NIL;
|
48
|
+
}
|
49
|
+
|
50
|
+
inline void operator<< (object::with_zone& o, type::nil v)
|
51
|
+
{ static_cast<object&>(o) << v; }
|
52
|
+
|
53
|
+
|
54
|
+
template <>
|
55
|
+
inline void object::as<void>() const
|
56
|
+
{
|
57
|
+
msgpack::type::nil v;
|
58
|
+
convert(&v);
|
59
|
+
}
|
60
|
+
|
61
|
+
|
62
|
+
} // namespace msgpack
|
63
|
+
|
64
|
+
#endif /* msgpack/type/nil.hpp */
|
65
|
+
|
@@ -0,0 +1,61 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_PAIR_HPP__
|
19
|
+
#define MSGPACK_TYPE_PAIR_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
#include <utility>
|
23
|
+
|
24
|
+
namespace msgpack {
|
25
|
+
|
26
|
+
|
27
|
+
template <typename T1, typename T2>
|
28
|
+
inline std::pair<T1, T2>& operator>> (object o, std::pair<T1, T2>& v)
|
29
|
+
{
|
30
|
+
if(o.type != type::ARRAY) { throw type_error(); }
|
31
|
+
if(o.via.array.size != 2) { throw type_error(); }
|
32
|
+
o.via.array.ptr[0].convert(&v.first);
|
33
|
+
o.via.array.ptr[1].convert(&v.second);
|
34
|
+
return v;
|
35
|
+
}
|
36
|
+
|
37
|
+
template <typename Stream, typename T1, typename T2>
|
38
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::pair<T1, T2>& v)
|
39
|
+
{
|
40
|
+
o.pack_array(2);
|
41
|
+
o.pack(v.first);
|
42
|
+
o.pack(v.second);
|
43
|
+
return o;
|
44
|
+
}
|
45
|
+
|
46
|
+
template <typename T1, typename T2>
|
47
|
+
inline void operator<< (object::with_zone& o, const std::pair<T1, T2>& v)
|
48
|
+
{
|
49
|
+
o.type = type::ARRAY;
|
50
|
+
object* p = (object*)o.zone->malloc(sizeof(object)*2);
|
51
|
+
o.via.array.ptr = p;
|
52
|
+
o.via.array.size = 2;
|
53
|
+
p[0] = object(v.first, o.zone);
|
54
|
+
p[1] = object(v.second, o.zone);
|
55
|
+
}
|
56
|
+
|
57
|
+
|
58
|
+
} // namespace msgpack
|
59
|
+
|
60
|
+
#endif /* msgpack/type/pair.hpp */
|
61
|
+
|
@@ -0,0 +1,94 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_RAW_HPP__
|
19
|
+
#define MSGPACK_TYPE_RAW_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
#include <string.h>
|
23
|
+
#include <string>
|
24
|
+
|
25
|
+
namespace msgpack {
|
26
|
+
|
27
|
+
namespace type {
|
28
|
+
|
29
|
+
struct raw_ref {
|
30
|
+
raw_ref() : size(0), ptr(NULL) {}
|
31
|
+
raw_ref(const char* p, uint32_t s) : size(s), ptr(p) {}
|
32
|
+
|
33
|
+
uint32_t size;
|
34
|
+
const char* ptr;
|
35
|
+
|
36
|
+
std::string str() const { return std::string(ptr, size); }
|
37
|
+
|
38
|
+
bool operator== (const raw_ref& x) const
|
39
|
+
{
|
40
|
+
return size == x.size && memcmp(ptr, x.ptr, size) == 0;
|
41
|
+
}
|
42
|
+
|
43
|
+
bool operator!= (const raw_ref& x) const
|
44
|
+
{
|
45
|
+
return !(*this != x);
|
46
|
+
}
|
47
|
+
|
48
|
+
bool operator< (const raw_ref& x) const
|
49
|
+
{
|
50
|
+
if(size == x.size) { return memcmp(ptr, x.ptr, size) < 0; }
|
51
|
+
else { return size < x.size; }
|
52
|
+
}
|
53
|
+
|
54
|
+
bool operator> (const raw_ref& x) const
|
55
|
+
{
|
56
|
+
if(size == x.size) { return memcmp(ptr, x.ptr, size) > 0; }
|
57
|
+
else { return size > x.size; }
|
58
|
+
}
|
59
|
+
};
|
60
|
+
|
61
|
+
} // namespace type
|
62
|
+
|
63
|
+
|
64
|
+
inline type::raw_ref& operator>> (object o, type::raw_ref& v)
|
65
|
+
{
|
66
|
+
if(o.type != type::RAW) { throw type_error(); }
|
67
|
+
v.ptr = o.via.raw.ptr;
|
68
|
+
v.size = o.via.raw.size;
|
69
|
+
return v;
|
70
|
+
}
|
71
|
+
|
72
|
+
template <typename Stream>
|
73
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const type::raw_ref& v)
|
74
|
+
{
|
75
|
+
o.pack_raw(v.size);
|
76
|
+
o.pack_raw_body(v.ptr, v.size);
|
77
|
+
return o;
|
78
|
+
}
|
79
|
+
|
80
|
+
inline void operator<< (object& o, const type::raw_ref& v)
|
81
|
+
{
|
82
|
+
o.type = type::RAW;
|
83
|
+
o.via.raw.ptr = v.ptr;
|
84
|
+
o.via.raw.size = v.size;
|
85
|
+
}
|
86
|
+
|
87
|
+
inline void operator<< (object::with_zone& o, const type::raw_ref& v)
|
88
|
+
{ static_cast<object&>(o) << v; }
|
89
|
+
|
90
|
+
|
91
|
+
} // namespace msgpack
|
92
|
+
|
93
|
+
#endif /* msgpack/type/raw.hpp */
|
94
|
+
|
@@ -0,0 +1,122 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_SET_HPP__
|
19
|
+
#define MSGPACK_TYPE_SET_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
#include <set>
|
23
|
+
|
24
|
+
namespace msgpack {
|
25
|
+
|
26
|
+
|
27
|
+
template <typename T>
|
28
|
+
inline std::set<T>& operator>> (object o, std::set<T>& v)
|
29
|
+
{
|
30
|
+
if(o.type != type::ARRAY) { throw type_error(); }
|
31
|
+
object* p = o.via.array.ptr + o.via.array.size;
|
32
|
+
object* const pbegin = o.via.array.ptr;
|
33
|
+
while(p > pbegin) {
|
34
|
+
--p;
|
35
|
+
v.insert(p->as<T>());
|
36
|
+
}
|
37
|
+
return v;
|
38
|
+
}
|
39
|
+
|
40
|
+
template <typename Stream, typename T>
|
41
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::set<T>& v)
|
42
|
+
{
|
43
|
+
o.pack_array(v.size());
|
44
|
+
for(typename std::set<T>::const_iterator it(v.begin()), it_end(v.end());
|
45
|
+
it != it_end; ++it) {
|
46
|
+
o.pack(*it);
|
47
|
+
}
|
48
|
+
return o;
|
49
|
+
}
|
50
|
+
|
51
|
+
template <typename T>
|
52
|
+
inline void operator<< (object::with_zone& o, const std::set<T>& v)
|
53
|
+
{
|
54
|
+
o.type = type::ARRAY;
|
55
|
+
if(v.empty()) {
|
56
|
+
o.via.array.ptr = NULL;
|
57
|
+
o.via.array.size = 0;
|
58
|
+
} else {
|
59
|
+
object* p = (object*)o.zone->malloc(sizeof(object)*v.size());
|
60
|
+
object* const pend = p + v.size();
|
61
|
+
o.via.array.ptr = p;
|
62
|
+
o.via.array.size = v.size();
|
63
|
+
typename std::set<T>::const_iterator it(v.begin());
|
64
|
+
do {
|
65
|
+
*p = object(*it, o.zone);
|
66
|
+
++p;
|
67
|
+
++it;
|
68
|
+
} while(p < pend);
|
69
|
+
}
|
70
|
+
}
|
71
|
+
|
72
|
+
|
73
|
+
template <typename T>
|
74
|
+
inline std::multiset<T>& operator>> (object o, std::multiset<T>& v)
|
75
|
+
{
|
76
|
+
if(o.type != type::ARRAY) { throw type_error(); }
|
77
|
+
object* p = o.via.array.ptr + o.via.array.size;
|
78
|
+
object* const pbegin = o.via.array.ptr;
|
79
|
+
while(p > pbegin) {
|
80
|
+
--p;
|
81
|
+
v.insert(p->as<T>());
|
82
|
+
}
|
83
|
+
return v;
|
84
|
+
}
|
85
|
+
|
86
|
+
template <typename Stream, typename T>
|
87
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::multiset<T>& v)
|
88
|
+
{
|
89
|
+
o.pack_array(v.size());
|
90
|
+
for(typename std::multiset<T>::const_iterator it(v.begin()), it_end(v.end());
|
91
|
+
it != it_end; ++it) {
|
92
|
+
o.pack(*it);
|
93
|
+
}
|
94
|
+
return o;
|
95
|
+
}
|
96
|
+
|
97
|
+
template <typename T>
|
98
|
+
inline void operator<< (object::with_zone& o, const std::multiset<T>& v)
|
99
|
+
{
|
100
|
+
o.type = type::ARRAY;
|
101
|
+
if(v.empty()) {
|
102
|
+
o.via.array.ptr = NULL;
|
103
|
+
o.via.array.size = 0;
|
104
|
+
} else {
|
105
|
+
object* p = (object*)o.zone->malloc(sizeof(object)*v.size());
|
106
|
+
object* const pend = p + v.size();
|
107
|
+
o.via.array.ptr = p;
|
108
|
+
o.via.array.size = v.size();
|
109
|
+
typename std::multiset<T>::const_iterator it(v.begin());
|
110
|
+
do {
|
111
|
+
*p = object(*it, o.zone);
|
112
|
+
++p;
|
113
|
+
++it;
|
114
|
+
} while(p < pend);
|
115
|
+
}
|
116
|
+
}
|
117
|
+
|
118
|
+
|
119
|
+
} // namespace msgpack
|
120
|
+
|
121
|
+
#endif /* msgpack/type/set.hpp */
|
122
|
+
|
@@ -0,0 +1,62 @@
|
|
1
|
+
//
|
2
|
+
// MessagePack for C++ static resolution routine
|
3
|
+
//
|
4
|
+
// Copyright (C) 2008-2009 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
|
+
#ifndef MSGPACK_TYPE_STRING_HPP__
|
19
|
+
#define MSGPACK_TYPE_STRING_HPP__
|
20
|
+
|
21
|
+
#include "msgpack/object.hpp"
|
22
|
+
#include <string>
|
23
|
+
|
24
|
+
namespace msgpack {
|
25
|
+
|
26
|
+
|
27
|
+
inline std::string& operator>> (object o, std::string& v)
|
28
|
+
{
|
29
|
+
if(o.type != type::RAW) { throw type_error(); }
|
30
|
+
v.assign(o.via.raw.ptr, o.via.raw.size);
|
31
|
+
return v;
|
32
|
+
}
|
33
|
+
|
34
|
+
template <typename Stream>
|
35
|
+
inline packer<Stream>& operator<< (packer<Stream>& o, const std::string& v)
|
36
|
+
{
|
37
|
+
o.pack_raw(v.size());
|
38
|
+
o.pack_raw_body(v.data(), v.size());
|
39
|
+
return o;
|
40
|
+
}
|
41
|
+
|
42
|
+
inline void operator<< (object::with_zone& o, const std::string& v)
|
43
|
+
{
|
44
|
+
o.type = type::RAW;
|
45
|
+
char* ptr = (char*)o.zone->malloc(v.size());
|
46
|
+
o.via.raw.ptr = ptr;
|
47
|
+
o.via.raw.size = (uint32_t)v.size();
|
48
|
+
memcpy(ptr, v.data(), v.size());
|
49
|
+
}
|
50
|
+
|
51
|
+
inline void operator<< (object& o, const std::string& v)
|
52
|
+
{
|
53
|
+
o.type = type::RAW;
|
54
|
+
o.via.raw.ptr = v.data();
|
55
|
+
o.via.raw.size = (uint32_t)v.size();
|
56
|
+
}
|
57
|
+
|
58
|
+
|
59
|
+
} // namespace msgpack
|
60
|
+
|
61
|
+
#endif /* msgpack/type/string.hpp */
|
62
|
+
|