From 45b5d71c3f26da25adfbd130333a17b8673da9d2 Mon Sep 17 00:00:00 2001 From: matzman Date: Mon, 4 May 2015 00:54:03 +0200 Subject: [PATCH] . --- 2015-05-01-Note-16-47.xoj | Bin 0 -> 39638 bytes .../.hg/store/phaseroots => config.properties | 0 .../launch/setup_core_types.launch | 4 + .../schema/core/configs/rulepackage.json | 152 +++++ .../CMakeLists.txt | 18 +- .../include/hos_cosgi_common/cosgi_common.h} | 8 +- .../package.xml | 6 +- src/hos_cosgi_devicerepository/CMakeLists.txt | 5 +- .../hos_devicerepository_service.h | 75 +- .../launch/cosgi_devicerepository.launch | 2 +- src/hos_cosgi_devicerepository/package.xml | 4 +- .../src/bundle_activator.cpp | 98 +-- .../src/hos_devicerepository_service_impl.cpp | 163 +++-- .../src/hos_devicerepository_service_impl.h | 94 ++- src/hos_cosgi_launcher/CMakeLists.txt | 5 +- .../hos_cosgi_launcher/hos_core_service.h | 33 +- src/hos_cosgi_launcher/package.xml | 6 +- .../src/hos_core_service_impl.cpp | 8 +- .../src/hos_core_service_impl.h | 17 +- .../src/hos_cosgi_launcher.cpp | 11 +- src/hos_cosgi_rulesengine/CMakeLists.txt | 8 +- .../hos_rulesengine_service.h | 4 +- .../hos_rulesexecution_service.h | 62 ++ .../launch/cosgi_rulesengine.launch | 3 + src/hos_cosgi_rulesengine/notes/notes.txt | 35 + .../notes/rulesengine.ecore | 46 +- .../notes/rulesengine.ecore_diagram | 642 +++++++++++------- src/hos_cosgi_rulesengine/package.xml | 4 +- .../src/bundle_activator.cpp | 111 ++- .../src/hos_rulesengine_service_impl.cpp | 80 ++- .../src/hos_rulesengine_service_impl.h | 71 +- .../src/rulesengine/GlobalContext.cpp | 32 + .../src/rulesengine/GlobalContext.h | 47 ++ .../src/rulesengine/Rule.cpp | 49 ++ .../src/rulesengine/Rule.h | 61 ++ .../src/rulesengine/RuleCondition.cpp | 25 + .../src/rulesengine/RuleCondition.h | 25 + .../src/rulesengine/RulePackage.cpp | 66 ++ .../src/rulesengine/RulePackage.h | 63 ++ src/hos_cosgi_rulesengine/test/rulepkg01.json | 32 + .../CMakeLists.txt | 205 ++++++ .../package.xml | 62 ++ .../src/bundle_activator.cpp | 170 +++++ .../src/hos_rulesexecution_python_impl.cpp | 71 ++ .../src/hos_rulesexecution_python_impl.h | 81 +++ .../include/hos_cpp_common/observable.h | 9 +- .../include/hos_cpp_common/observable_impl.h | 41 +- src/hos_launch/CMakeLists.txt | 170 +++++ src/hos_launch/launch/hos_all.launch | 4 + src/hos_launch/launch/hos_cosgi.launch | 13 + src/hos_launch/package.xml | 62 ++ src/hos_libvariant/CMakeLists.txt | 42 +- .../HosSchemaLoader}/HosSchemaLoader.h | 15 +- src/hos_libvariant/package.xml | 2 + .../src/HosSchemaLoader}/HosSchemaLoader.cpp | 8 +- .../src/{ => libvariant}/.hg/00changelog.i | Bin .../src/{ => libvariant}/.hg/branch | 0 .../{ => libvariant}/.hg/cache/branch2-served | 0 .../src/{ => libvariant}/.hg/dirstate | Bin .../src/{ => libvariant}/.hg/hgrc | 0 .../src/{ => libvariant}/.hg/requires | 0 .../{ => libvariant}/.hg/store/00changelog.i | Bin .../{ => libvariant}/.hg/store/00manifest.i | Bin .../.hg/store/data/_c_make_lists.txt.i | Bin .../.hg/store/data/_config.h.in.i | Bin .../.hg/store/data/_doxyfile.in.i | Bin .../.hg/store/data/_l_i_c_e_n_s_e.i | Bin ...lib_variant_build_tree_settings.cmake.in.i | Bin .../store/data/_lib_variant_config.cmake.in.i | Bin .../_lib_variant_config_version.cmake.in.i | Bin .../.hg/store/data/_r_e_a_d_m_e.i | Bin .../.hg/store/data/_r_e_a_d_m_e.md.i | Bin .../cmake/_modules/_find_lib_y_a_m_l.cmake.i | Bin .../cmake/_modules/_find_msg_pack.cmake.i | Bin .../data/cmake/_modules/_make_t_b_z2.cmake.i | Bin .../store/data/examples/_c_make_lists.txt.i | Bin .../.hg/store/data/examples/_r_e_a_d_m_e.i | Bin .../.hg/store/data/examples/arg__parse.cc.i | Bin .../.hg/store/data/examples/convert.cc.i | Bin .../.hg/store/data/examples/example1.cc.i | Bin .../.hg/store/data/examples/example2.cc.i | Bin .../store/data/examples/list__example.cc.i | Bin .../.hg/store/data/examples/map__example.cc.i | Bin .../store/data/examples/pretty__print.cc.i | Bin .../data/include/_variant/_arg_parse.h.i | Bin .../.hg/store/data/include/_variant/_blob.h.i | Bin .../store/data/include/_variant/_emitter.h.i | Bin .../data/include/_variant/_emitter_output.h.i | Bin .../data/include/_variant/_exceptions.h.i | Bin .../data/include/_variant/_extensions.h.i | Bin .../data/include/_variant/_guess_format.h.i | Bin .../store/data/include/_variant/_parser.h.i | Bin .../data/include/_variant/_parser_input.h.i | Bin .../.hg/store/data/include/_variant/_path.h.i | Bin .../store/data/include/_variant/_payload.h.i | Bin .../store/data/include/_variant/_schema.h.i | Bin .../data/include/_variant/_schema_loader.h.i | Bin .../data/include/_variant/_shared_ptr.h.i | Bin .../store/data/include/_variant/_variant.h.i | Bin .../include/_variant/_variant_defines.h.i | Bin .../include/_variant/_variant_internal.h.i | Bin ..._j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i | Bin .../store/data/lib/json/_j_s_o_n__parser.c.i | Bin .../store/data/lib/json/_j_s_o_n__parser.h.i | Bin .../.hg/store/data/libvariant.pc.in.i | Bin .../.hg/store/data/src/_arg_parse.cc.i | Bin .../.hg/store/data/src/_base64.cc.i | Bin .../.hg/store/data/src/_base64.h.i | Bin .../.hg/store/data/src/_blob.cc.i | Bin .../.hg/store/data/src/_blob_magic.h.i | Bin .../store/data/src/_bundle_hdr_emitter.cc.i | Bin .../store/data/src/_bundle_hdr_emitter.h.i | Bin .../store/data/src/_bundle_hdr_parser.cc.i | Bin .../.hg/store/data/src/_bundle_hdr_parser.h.i | Bin .../.hg/store/data/src/_c_make_lists.txt.i | Bin .../.hg/store/data/src/_emitter.cc.i | Bin .../.hg/store/data/src/_emitter_output.cc.i | Bin .../.hg/store/data/src/_event_buffer.cc.i | Bin .../.hg/store/data/src/_event_buffer.h.i | Bin .../.hg/store/data/src/_exceptions.cc.i | Bin .../.hg/store/data/src/_extensions.cc.i | Bin .../.hg/store/data/src/_guess_format.cc.i | Bin .../.hg/store/data/src/_guess_scalar.cc.i | Bin .../.hg/store/data/src/_guess_scalar.h.i | Bin .../.hg/store/data/src/_j_s_o_n_emitter.cc.i | Bin .../.hg/store/data/src/_j_s_o_n_emitter.h.i | Bin .../.hg/store/data/src/_j_s_o_n_parser.cc.i | Bin .../.hg/store/data/src/_j_s_o_n_parser.h.i | Bin .../.hg/store/data/src/_msg_pack_emitter.cc.i | Bin .../.hg/store/data/src/_msg_pack_emitter.h.i | Bin .../.hg/store/data/src/_msg_pack_parser.cc.i | Bin .../.hg/store/data/src/_msg_pack_parser.h.i | Bin .../.hg/store/data/src/_parse_bool.cc.i | Bin .../.hg/store/data/src/_parse_bool.h.i | Bin .../.hg/store/data/src/_parser.cc.i | Bin .../.hg/store/data/src/_parser_input.cc.i | Bin .../.hg/store/data/src/_path.cc.i | Bin .../.hg/store/data/src/_payload.cc.i | Bin .../.hg/store/data/src/_schema.cc.i | Bin .../.hg/store/data/src/_schema_loader.cc.i | Bin .../.hg/store/data/src/_stack_trace.cc.i | Bin .../.hg/store/data/src/_stack_trace.h.i | Bin .../.hg/store/data/src/_variant.cc.i | Bin .../.hg/store/data/src/_variant_emitting.cc.i | Bin .../.hg/store/data/src/_variant_parsing.cc.i | Bin .../store/data/src/_x_m_l_p_l_i_s_t_defs.h.i | Bin .../data/src/_x_m_l_p_l_i_s_t_emitter.cc.i | Bin .../data/src/_x_m_l_p_l_i_s_t_emitter.h.i | Bin .../data/src/_x_m_l_p_l_i_s_t_parser.cc.i | Bin .../data/src/_x_m_l_p_l_i_s_t_parser.h.i | Bin .../.hg/store/data/src/_y_a_m_l_emitter.cc.i | Bin .../.hg/store/data/src/_y_a_m_l_emitter.h.i | Bin .../.hg/store/data/src/_y_a_m_l_parser.cc.i | Bin .../.hg/store/data/src/_y_a_m_l_parser.h.i | Bin .../.hg/store/data/src/argparse-schema.cc.i | Bin .../.hg/store/data/src/argparse-schema.yaml.i | Bin .../.hg/store/data/src/gen-argparse-schema.i | Bin .../.hg/store/data/src/gen-json-schema.i | Bin .../.hg/store/data/src/json-schema-v4.cc.i | Bin .../.hg/store/data/src/json-schema-v4.json.i | Bin .../.hg/store/data/src/varsh.cc.i | Bin .../.hg/store/data/test/_c_make_lists.txt.i | Bin .../.hg/store/data/test/_test_assert.h.i | Bin .../.hg/store/data/test/_test_common.h.i | Bin .../.hg/store/data/test/prof__msgpack.cc.i | Bin .../.hg/store/data/test/rand__test__json.cc.i | Bin .../store/data/test/rand__test__msgpack.cc.i | Bin .../.hg/store/data/test/rand__test__xml.cc.i | Bin .../.hg/store/data/test/rand__test__yaml.cc.i | Bin .../.hg/store/data/test/test__argparse.cc.i | Bin .../store/data/test/test__argparse.sh.in.i | Bin .../data/test/test__argparse__merge.cc.i | Bin .../.hg/store/data/test/test__base64.cc.i | Bin .../store/data/test/test__bundleemitter.cc.i | Bin .../.hg/store/data/test/test__bundlehdr.cc.i | Bin .../store/data/test/test__bundleparser.cc.i | Bin .../.hg/store/data/test/test__empty.cc.i | Bin .../.hg/store/data/test/test__extensions.cc.i | Bin .../.hg/store/data/test/test__guess.cc.i | Bin .../store/data/test/test__json__parser.cc.i | Bin .../.hg/store/data/test/test__loadall.cc.i | Bin .../store/data/test/test__memoryoutput.cc.i | Bin .../.hg/store/data/test/test__numerics.cc.i | Bin .../.hg/store/data/test/test__path.cc.i | Bin .../.hg/store/data/test/test__payload.cc.i | Bin .../.hg/store/data/test/test__roundtrip.cc.i | Bin .../.hg/store/data/test/test__schema.cc.i | Bin .../test__schema__data/invalid-schema.test.i | Bin .../test__schema__data/invalid__path.test.i | Bin .../jsonschema-tests/_makefile.i | Bin .../jsonschema-tests/_r_e_a_d_m_e.i | Bin .../jsonschema-tests/additional_items.json.i | Bin .../jsonschema-tests/additional_items.test.i | Bin .../additional_properties.json.i | Bin .../additional_properties.test.i | Bin .../jsonschema-tests/all_of.json.i | Bin .../jsonschema-tests/all_of.test.i | Bin .../jsonschema-tests/any_of.json.i | Bin .../jsonschema-tests/any_of.test.i | Bin .../jsonschema-tests/convert.py.i | Bin .../jsonschema-tests/definitions.json.i | Bin .../jsonschema-tests/definitions.test.i | Bin .../jsonschema-tests/dependencies.json.i | Bin .../jsonschema-tests/dependencies.test.i | Bin .../jsonschema-tests/enum.json.i | Bin .../jsonschema-tests/enum.test.i | Bin .../jsonschema-tests/items.json.i | Bin .../jsonschema-tests/items.test.i | Bin .../jsonschema-tests/max_items.json.i | Bin .../jsonschema-tests/max_items.test.i | Bin .../jsonschema-tests/max_length.json.i | Bin .../jsonschema-tests/max_length.test.i | Bin .../jsonschema-tests/max_properties.json.i | Bin .../jsonschema-tests/max_properties.test.i | Bin .../jsonschema-tests/maximum.json.i | Bin .../jsonschema-tests/maximum.test.i | Bin .../jsonschema-tests/min_items.json.i | Bin .../jsonschema-tests/min_items.test.i | Bin .../jsonschema-tests/min_length.json.i | Bin .../jsonschema-tests/min_length.test.i | Bin .../jsonschema-tests/min_properties.json.i | Bin .../jsonschema-tests/min_properties.test.i | Bin .../jsonschema-tests/minimum.json.i | Bin .../jsonschema-tests/minimum.test.i | Bin .../jsonschema-tests/multiple_of.json.i | Bin .../jsonschema-tests/multiple_of.test.i | Bin .../jsonschema-tests/not.json.i | Bin .../jsonschema-tests/not.test.i | Bin .../jsonschema-tests/one_of.json.i | Bin .../jsonschema-tests/one_of.test.i | Bin .../jsonschema-tests/pattern.json.i | Bin .../jsonschema-tests/pattern.test.i | Bin .../pattern_properties.json.i | Bin .../pattern_properties.test.i | Bin .../jsonschema-tests/properties.json.i | Bin .../jsonschema-tests/properties.test.i | Bin .../jsonschema-tests/ref.json.i | Bin .../jsonschema-tests/ref.test.i | Bin .../jsonschema-tests/required.json.i | Bin .../jsonschema-tests/required.test.i | Bin .../jsonschema-tests/type.json.i | Bin .../jsonschema-tests/type.test.i | Bin .../jsonschema-tests/unique_items.json.i | Bin .../jsonschema-tests/unique_items.test.i | Bin .../negative-unique-items.test.i | Bin .../test/test__schema__data/recursion.test.i | Bin .../test__schema__data/sample-test.test.i | Bin .../simple-test-fail.json.i | Bin .../simple-test-schema.json.i | Bin .../test__schema__data/simple-test.json.i | Bin .../test__resolveuri.json.i | Bin .../tv4-tests/01-any-type/01-type.test.i | Bin .../tv4-tests/01-any-type/02-enum.test.i | Bin .../tv4-tests/01-any-type/02-enum.yaml.i | Bin .../tv4-tests/01-any-type/_makefile.i | Bin .../tv4-tests/02-numeric/01-min-max.test.i | Bin .../tv4-tests/02-numeric/01-min-max.yaml.i | Bin .../02-numeric/02-multiple_of.test.i | Bin .../02-numeric/02-multiple_of.yaml.i | Bin .../tv4-tests/02-numeric/_makefile.i | Bin .../03-strings/01-min-max-length.test.i | Bin .../03-strings/01-min-max-length.yaml.i | Bin .../tv4-tests/03-strings/02-pattern.test.i | Bin .../tv4-tests/03-strings/02-pattern.yaml.i | Bin .../tv4-tests/03-strings/_makefile.i | Bin .../04-arrays/01-min-max-length.test.i | Bin .../04-arrays/01-min-max-length.yaml.i | Bin .../tv4-tests/04-arrays/02-uniqueitems.test.i | Bin .../tv4-tests/04-arrays/02-uniqueitems.yaml.i | Bin .../tv4-tests/04-arrays/03-items-plain.test.i | Bin .../tv4-tests/04-arrays/03-items-plain.yaml.i | Bin .../04-arrays/04-items-tuple-typing.test.i | Bin .../04-arrays/04-items-tuple-typing.yaml.i | Bin .../04-arrays/05-additionalitems.test.i | Bin .../04-arrays/05-additionalitems.yaml.i | Bin .../tv4-tests/04-arrays/_makefile.i | Bin .../05-objects/01-min-max-properties.test.i | Bin .../05-objects/01-min-max-properties.yaml.i | Bin .../tv4-tests/05-objects/02-required.test.i | Bin .../tv4-tests/05-objects/02-required.yaml.i | Bin .../tv4-tests/05-objects/03-properties.test.i | Bin .../tv4-tests/05-objects/03-properties.yaml.i | Bin .../05-objects/04-patternproperties.test.i | Bin .../05-objects/04-patternproperties.yaml.i | Bin .../05-objects/05-additionalproperties.test.i | Bin .../05-objects/05-additionalproperties.yaml.i | Bin .../05-objects/06-dependencies.test.i | Bin .../05-objects/06-dependencies.yaml.i | Bin .../tv4-tests/05-objects/_makefile.i | Bin .../06-combinations/01-all_of.test.i | Bin .../06-combinations/01-all_of.yaml.i | Bin .../06-combinations/02-any_of.test.i | Bin .../06-combinations/02-any_of.yaml.i | Bin .../06-combinations/03-one_of.test.i | Bin .../06-combinations/03-one_of.yaml.i | Bin .../tv4-tests/06-combinations/04-not.test.i | Bin .../tv4-tests/06-combinations/04-not.yaml.i | Bin .../tv4-tests/06-combinations/_makefile.i | Bin .../tv4-tests/07-ref/04-ref.test.i | Bin .../tv4-tests/07-ref/04-ref.yaml.i | Bin .../07-ref/05-inline-addressing.test.i | Bin .../07-ref/05-inline-addressing.yaml.i | Bin .../tv4-tests/07-ref/_makefile.i | Bin .../test__schema__data/tv4-tests/_makefile.i | Bin .../tv4-tests/_r_e_a_d_m_e.i | Bin .../tv4-tests/submakefile.i | Bin .../.hg/store/data/test/test__variant.cc.i | Bin .../store/data/test/test__xml__parser.cc.i | Bin .../store/data/test/test__yaml__parser.cc.i | Bin .../.hg/store/data/~2ehgignore.i | Bin .../.hg/store/data/~2ehgtags.i | Bin .../src/{ => libvariant}/.hg/store/fncache | 0 .../.hg/store/phaseroots} | 0 .../src/{ => libvariant}/.hg/store/undo | Bin .../.hg/store/undo.phaseroots} | 0 .../.hg/undo.bookmarks} | 0 .../src/{ => libvariant}/.hg/undo.branch | 0 .../src/{ => libvariant}/.hg/undo.desc | 0 .../src/libvariant/.hg/undo.dirstate | 0 .../src/{ => libvariant}/.hgignore | 0 .../src/{ => libvariant}/.hgtags | 0 .../src/{ => libvariant}/CMakeLists.txt | 0 .../src/{ => libvariant}/Config.h.in | 0 .../src/{ => libvariant}/Doxyfile.in | 0 .../src/{ => libvariant}/LICENSE | 0 .../LibVariantBuildTreeSettings.cmake.in | 0 .../LibVariantConfig.cmake.in | 0 .../LibVariantConfigVersion.cmake.in | 0 .../src/{ => libvariant}/README.md | 0 .../cmake/Modules/FindLibYAML.cmake | 0 .../cmake/Modules/FindMsgPack.cmake | 0 .../cmake/Modules/MakeTBZ2.cmake | 0 .../{ => libvariant}/examples/CMakeLists.txt | 0 .../src/{ => libvariant}/examples/README | 0 .../{ => libvariant}/examples/arg_parse.cc | 6 +- .../src/{ => libvariant}/examples/convert.cc | 2 +- .../src/{ => libvariant}/examples/example1.cc | 2 +- .../src/{ => libvariant}/examples/example2.cc | 2 +- .../{ => libvariant}/examples/list_example.cc | 3 +- .../{ => libvariant}/examples/map_example.cc | 3 +- .../{ => libvariant}/examples/pretty_print.cc | 2 +- .../include/Variant/ArgParse.h | 3 +- .../{ => libvariant}/include/Variant/Blob.h | 3 +- .../include/Variant/Emitter.h | 7 +- .../include/Variant/EmitterOutput.h | 0 .../include/Variant/Exceptions.h | 3 +- .../include/Variant/Extensions.h | 2 +- .../include/Variant/GuessFormat.h | 5 +- .../{ => libvariant}/include/Variant/Parser.h | 7 +- .../include/Variant/ParserInput.h | 0 .../{ => libvariant}/include/Variant/Path.h | 3 +- .../include/Variant/Payload.h | 7 +- .../{ => libvariant}/include/Variant/Schema.h | 3 +- .../include/Variant/SchemaLoader.h | 3 +- .../include/Variant/SharedPtr.h | 0 .../include/Variant/Variant.h | 9 +- .../include/Variant/VariantDefines.h | 0 .../include/Variant/VariantInternal.h | 9 +- .../lib/json/JSON_PARSER_README.htm | 0 .../{ => libvariant}/lib/json/JSON_parser.c | 3 +- .../{ => libvariant}/lib/json/JSON_parser.h | 0 .../src/{ => libvariant}/libvariant.pc.in | 0 .../src/{ => libvariant}/src/ArgParse.cc | 14 +- .../src/{ => libvariant}/src/Base64.cc | 2 +- .../src/{ => libvariant}/src/Base64.h | 0 .../src/{ => libvariant}/src/Blob.cc | 3 +- .../src/{ => libvariant}/src/BlobMagic.h | 0 .../{ => libvariant}/src/BundleHdrEmitter.cc | 3 +- .../{ => libvariant}/src/BundleHdrEmitter.h | 5 +- .../{ => libvariant}/src/BundleHdrParser.cc | 8 +- .../{ => libvariant}/src/BundleHdrParser.h | 5 +- .../src/{ => libvariant}/src/CMakeLists.txt | 0 .../src/{ => libvariant}/src/Emitter.cc | 15 +- .../src/{ => libvariant}/src/EmitterOutput.cc | 3 +- .../src/{ => libvariant}/src/EventBuffer.cc | 3 +- .../src/{ => libvariant}/src/EventBuffer.h | 5 +- .../src/{ => libvariant}/src/Exceptions.cc | 6 +- .../src/{ => libvariant}/src/Extensions.cc | 7 +- .../src/{ => libvariant}/src/GuessFormat.cc | 3 +- .../src/{ => libvariant}/src/GuessScalar.cc | 3 +- .../src/{ => libvariant}/src/GuessScalar.h | 3 +- .../src/{ => libvariant}/src/JSONEmitter.cc | 10 +- .../src/{ => libvariant}/src/JSONEmitter.h | 3 +- .../src/{ => libvariant}/src/JSONParser.cc | 5 +- .../src/{ => libvariant}/src/JSONParser.h | 11 +- .../{ => libvariant}/src/MsgPackEmitter.cc | 5 +- .../src/{ => libvariant}/src/MsgPackEmitter.h | 13 +- .../src/{ => libvariant}/src/MsgPackParser.cc | 5 +- .../src/{ => libvariant}/src/MsgPackParser.h | 5 +- .../src/{ => libvariant}/src/ParseBool.cc | 3 +- .../src/{ => libvariant}/src/ParseBool.h | 0 .../src/{ => libvariant}/src/Parser.cc | 18 +- .../src/{ => libvariant}/src/ParserInput.cc | 3 +- .../src/{ => libvariant}/src/Path.cc | 3 +- .../src/{ => libvariant}/src/Payload.cc | 5 +- .../src/{ => libvariant}/src/Schema.cc | 5 +- .../src/{ => libvariant}/src/SchemaLoader.cc | 6 +- .../src/{ => libvariant}/src/StackTrace.cc | 3 +- .../src/{ => libvariant}/src/StackTrace.h | 0 .../src/{ => libvariant}/src/Variant.cc | 5 +- .../{ => libvariant}/src/VariantEmitting.cc | 4 +- .../{ => libvariant}/src/VariantParsing.cc | 4 +- .../src/{ => libvariant}/src/XMLPLISTDefs.h | 0 .../{ => libvariant}/src/XMLPLISTEmitter.cc | 10 +- .../{ => libvariant}/src/XMLPLISTEmitter.h | 3 +- .../{ => libvariant}/src/XMLPLISTParser.cc | 8 +- .../src/{ => libvariant}/src/XMLPLISTParser.h | 7 +- .../src/{ => libvariant}/src/YAMLEmitter.cc | 8 +- .../src/{ => libvariant}/src/YAMLEmitter.h | 3 +- .../src/{ => libvariant}/src/YAMLParser.cc | 7 +- .../src/{ => libvariant}/src/YAMLParser.h | 7 +- .../{ => libvariant}/src/argparse-schema.cc | 0 .../{ => libvariant}/src/argparse-schema.yaml | 0 .../{ => libvariant}/src/gen-argparse-schema | 0 .../src/{ => libvariant}/src/gen-json-schema | 0 .../{ => libvariant}/src/json-schema-v4.cc | 0 .../{ => libvariant}/src/json-schema-v4.json | 0 .../src/{ => libvariant}/src/varsh.cc | 12 +- .../src/{ => libvariant}/test/CMakeLists.txt | 0 .../src/{ => libvariant}/test/TestAssert.h | 0 .../src/{ => libvariant}/test/TestCommon.h | 9 +- .../src/{ => libvariant}/test/prof_msgpack.cc | 4 +- .../{ => libvariant}/test/rand_test_json.cc | 2 +- .../test/rand_test_msgpack.cc | 2 +- .../{ => libvariant}/test/rand_test_xml.cc | 2 +- .../{ => libvariant}/test/rand_test_yaml.cc | 2 +- .../{ => libvariant}/test/test_argparse.cc | 4 +- .../{ => libvariant}/test/test_argparse.sh.in | 0 .../test/test_argparse_merge.cc | 7 +- .../src/{ => libvariant}/test/test_base64.cc | 3 +- .../test/test_bundleemitter.cc | 9 +- .../{ => libvariant}/test/test_bundlehdr.cc | 6 +- .../test/test_bundleparser.cc | 6 +- .../src/{ => libvariant}/test/test_empty.cc | 5 +- .../{ => libvariant}/test/test_extensions.cc | 5 +- .../src/{ => libvariant}/test/test_guess.cc | 4 +- .../{ => libvariant}/test/test_json_parser.cc | 5 +- .../src/{ => libvariant}/test/test_loadall.cc | 2 +- .../test/test_memoryoutput.cc | 3 +- .../{ => libvariant}/test/test_numerics.cc | 5 +- .../src/{ => libvariant}/test/test_path.cc | 6 +- .../src/{ => libvariant}/test/test_payload.cc | 6 +- .../{ => libvariant}/test/test_roundtrip.cc | 3 +- .../src/{ => libvariant}/test/test_schema.cc | 4 +- .../test/test_schema_data/invalid-schema.test | 0 .../test/test_schema_data/invalid_path.test | 0 .../jsonschema-tests/Makefile | 0 .../test_schema_data/jsonschema-tests/README | 0 .../jsonschema-tests/additionalItems.json | 0 .../jsonschema-tests/additionalItems.test | 0 .../additionalProperties.json | 0 .../additionalProperties.test | 0 .../jsonschema-tests/allOf.json | 0 .../jsonschema-tests/allOf.test | 0 .../jsonschema-tests/anyOf.json | 0 .../jsonschema-tests/anyOf.test | 0 .../jsonschema-tests/convert.py | 0 .../jsonschema-tests/definitions.json | 0 .../jsonschema-tests/definitions.test | 0 .../jsonschema-tests/dependencies.json | 0 .../jsonschema-tests/dependencies.test | 0 .../jsonschema-tests/enum.json | 0 .../jsonschema-tests/enum.test | 0 .../jsonschema-tests/items.json | 0 .../jsonschema-tests/items.test | 0 .../jsonschema-tests/maxItems.json | 0 .../jsonschema-tests/maxItems.test | 0 .../jsonschema-tests/maxLength.json | 0 .../jsonschema-tests/maxLength.test | 0 .../jsonschema-tests/maxProperties.json | 0 .../jsonschema-tests/maxProperties.test | 0 .../jsonschema-tests/maximum.json | 0 .../jsonschema-tests/maximum.test | 0 .../jsonschema-tests/minItems.json | 0 .../jsonschema-tests/minItems.test | 0 .../jsonschema-tests/minLength.json | 0 .../jsonschema-tests/minLength.test | 0 .../jsonschema-tests/minProperties.json | 0 .../jsonschema-tests/minProperties.test | 0 .../jsonschema-tests/minimum.json | 0 .../jsonschema-tests/minimum.test | 0 .../jsonschema-tests/multipleOf.json | 0 .../jsonschema-tests/multipleOf.test | 0 .../jsonschema-tests/not.json | 0 .../jsonschema-tests/not.test | 0 .../jsonschema-tests/oneOf.json | 0 .../jsonschema-tests/oneOf.test | 0 .../jsonschema-tests/pattern.json | 0 .../jsonschema-tests/pattern.test | 0 .../jsonschema-tests/patternProperties.json | 0 .../jsonschema-tests/patternProperties.test | 0 .../jsonschema-tests/properties.json | 0 .../jsonschema-tests/properties.test | 0 .../jsonschema-tests/ref.json | 0 .../jsonschema-tests/ref.test | 0 .../jsonschema-tests/required.json | 0 .../jsonschema-tests/required.test | 0 .../jsonschema-tests/type.json | 0 .../jsonschema-tests/type.test | 0 .../jsonschema-tests/uniqueItems.json | 0 .../jsonschema-tests/uniqueItems.test | 0 .../negative-unique-items.test | 0 .../test/test_schema_data/recursion.test | 0 .../test/test_schema_data/sample-test.test | 0 .../test_schema_data/simple-test-fail.json | 0 .../test_schema_data/simple-test-schema.json | 0 .../test/test_schema_data/simple-test.json | 0 .../test_schema_data/test_resolveuri.json | 0 .../tv4-tests/01-any-type/01-type.test | 0 .../tv4-tests/01-any-type/02-enum.test | 0 .../tv4-tests/01-any-type/02-enum.yaml | 0 .../tv4-tests/01-any-type/Makefile | 0 .../tv4-tests/02-numeric/01-min-max.test | 0 .../tv4-tests/02-numeric/01-min-max.yaml | 0 .../tv4-tests/02-numeric/02-multipleOf.test | 0 .../tv4-tests/02-numeric/02-multipleOf.yaml | 0 .../tv4-tests/02-numeric/Makefile | 0 .../03-strings/01-min-max-length.test | 0 .../03-strings/01-min-max-length.yaml | 0 .../tv4-tests/03-strings/02-pattern.test | 0 .../tv4-tests/03-strings/02-pattern.yaml | 0 .../tv4-tests/03-strings/Makefile | 0 .../04-arrays/01-min-max-length.test | 0 .../04-arrays/01-min-max-length.yaml | 0 .../tv4-tests/04-arrays/02-uniqueitems.test | 0 .../tv4-tests/04-arrays/02-uniqueitems.yaml | 0 .../tv4-tests/04-arrays/03-items-plain.test | 0 .../tv4-tests/04-arrays/03-items-plain.yaml | 0 .../04-arrays/04-items-tuple-typing.test | 0 .../04-arrays/04-items-tuple-typing.yaml | 0 .../04-arrays/05-additionalitems.test | 0 .../04-arrays/05-additionalitems.yaml | 0 .../tv4-tests/04-arrays/Makefile | 0 .../05-objects/01-min-max-properties.test | 0 .../05-objects/01-min-max-properties.yaml | 0 .../tv4-tests/05-objects/02-required.test | 0 .../tv4-tests/05-objects/02-required.yaml | 0 .../tv4-tests/05-objects/03-properties.test | 0 .../tv4-tests/05-objects/03-properties.yaml | 0 .../05-objects/04-patternproperties.test | 0 .../05-objects/04-patternproperties.yaml | 0 .../05-objects/05-additionalproperties.test | 0 .../05-objects/05-additionalproperties.yaml | 0 .../tv4-tests/05-objects/06-dependencies.test | 0 .../tv4-tests/05-objects/06-dependencies.yaml | 0 .../tv4-tests/05-objects/Makefile | 0 .../tv4-tests/06-combinations/01-allOf.test | 0 .../tv4-tests/06-combinations/01-allOf.yaml | 0 .../tv4-tests/06-combinations/02-anyOf.test | 0 .../tv4-tests/06-combinations/02-anyOf.yaml | 0 .../tv4-tests/06-combinations/03-oneOf.test | 0 .../tv4-tests/06-combinations/03-oneOf.yaml | 0 .../tv4-tests/06-combinations/04-not.test | 0 .../tv4-tests/06-combinations/04-not.yaml | 0 .../tv4-tests/06-combinations/Makefile | 0 .../tv4-tests/07-ref/04-ref.test | 0 .../tv4-tests/07-ref/04-ref.yaml | 0 .../07-ref/05-inline-addressing.test | 0 .../07-ref/05-inline-addressing.yaml | 0 .../tv4-tests/07-ref/Makefile | 0 .../test/test_schema_data/tv4-tests/Makefile | 0 .../test/test_schema_data/tv4-tests/README | 0 .../test_schema_data/tv4-tests/submakefile | 0 .../src/{ => libvariant}/test/test_variant.cc | 10 +- .../{ => libvariant}/test/test_xml_parser.cc | 4 +- .../{ => libvariant}/test/test_yaml_parser.cc | 6 +- 566 files changed, 2806 insertions(+), 804 deletions(-) create mode 100644 2015-05-01-Note-16-47.xoj rename src/hos_libvariant/src/.hg/store/phaseroots => config.properties (100%) create mode 100644 src/hos_core_types/schema/core/configs/rulepackage.json rename src/{hos_cosgi_core => hos_cosgi_common}/CMakeLists.txt (91%) rename src/{hos_cosgi_core/include/hos_cosgi_core/cosgi_core.h => hos_cosgi_common/include/hos_cosgi_common/cosgi_common.h} (71%) rename src/{hos_cosgi_core => hos_cosgi_common}/package.xml (91%) create mode 100644 src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesexecution_service.h create mode 100644 src/hos_cosgi_rulesengine/notes/notes.txt create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.cpp create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.h create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/Rule.cpp create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/Rule.h create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.cpp create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.h create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.cpp create mode 100644 src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.h create mode 100644 src/hos_cosgi_rulesengine/test/rulepkg01.json create mode 100644 src/hos_cosgi_rulesexecution_python/CMakeLists.txt create mode 100644 src/hos_cosgi_rulesexecution_python/package.xml create mode 100644 src/hos_cosgi_rulesexecution_python/src/bundle_activator.cpp create mode 100644 src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.cpp create mode 100644 src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.h create mode 100644 src/hos_launch/CMakeLists.txt create mode 100644 src/hos_launch/launch/hos_all.launch create mode 100644 src/hos_launch/launch/hos_cosgi.launch create mode 100644 src/hos_launch/package.xml rename src/{hos_cosgi_devicerepository/src => hos_libvariant/include/hos_libvariant/HosSchemaLoader}/HosSchemaLoader.h (70%) rename src/{hos_cosgi_devicerepository/src => hos_libvariant/src/HosSchemaLoader}/HosSchemaLoader.cpp (81%) rename src/hos_libvariant/src/{ => libvariant}/.hg/00changelog.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/branch (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/cache/branch2-served (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/dirstate (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/hgrc (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/requires (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/00changelog.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/00manifest.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_c_make_lists.txt.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_config.h.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_doxyfile.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_l_i_c_e_n_s_e.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_lib_variant_build_tree_settings.cmake.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_lib_variant_config.cmake.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_lib_variant_config_version.cmake.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_r_e_a_d_m_e.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/_r_e_a_d_m_e.md.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/cmake/_modules/_find_lib_y_a_m_l.cmake.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/cmake/_modules/_find_msg_pack.cmake.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/cmake/_modules/_make_t_b_z2.cmake.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/_c_make_lists.txt.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/_r_e_a_d_m_e.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/arg__parse.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/convert.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/example1.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/example2.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/list__example.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/map__example.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/examples/pretty__print.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_arg_parse.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_blob.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_emitter_output.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_exceptions.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_extensions.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_guess_format.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_parser_input.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_path.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_payload.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_schema.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_schema_loader.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_shared_ptr.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_variant.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_variant_defines.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/include/_variant/_variant_internal.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/lib/json/_j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/lib/json/_j_s_o_n__parser.c.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/lib/json/_j_s_o_n__parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/libvariant.pc.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_arg_parse.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_base64.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_base64.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_blob.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_blob_magic.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_bundle_hdr_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_bundle_hdr_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_bundle_hdr_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_bundle_hdr_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_c_make_lists.txt.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_emitter_output.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_event_buffer.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_event_buffer.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_exceptions.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_extensions.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_guess_format.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_guess_scalar.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_guess_scalar.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_j_s_o_n_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_j_s_o_n_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_j_s_o_n_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_j_s_o_n_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_msg_pack_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_msg_pack_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_msg_pack_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_msg_pack_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_parse_bool.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_parse_bool.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_parser_input.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_path.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_payload.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_schema.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_schema_loader.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_stack_trace.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_stack_trace.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_variant.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_variant_emitting.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_variant_parsing.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_x_m_l_p_l_i_s_t_defs.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_y_a_m_l_emitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_y_a_m_l_emitter.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_y_a_m_l_parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/_y_a_m_l_parser.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/argparse-schema.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/argparse-schema.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/gen-argparse-schema.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/gen-json-schema.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/json-schema-v4.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/json-schema-v4.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/src/varsh.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/_c_make_lists.txt.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/_test_assert.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/_test_common.h.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/prof__msgpack.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/rand__test__json.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/rand__test__msgpack.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/rand__test__xml.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/rand__test__yaml.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__argparse.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__argparse.sh.in.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__argparse__merge.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__base64.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__bundleemitter.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__bundlehdr.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__bundleparser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__empty.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__extensions.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__guess.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__json__parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__loadall.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__memoryoutput.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__numerics.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__path.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__payload.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__roundtrip.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/invalid-schema.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/invalid__path.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/_r_e_a_d_m_e.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/convert.py.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/items.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/not.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/not.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/required.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/required.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/type.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/type.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/negative-unique-items.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/recursion.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/sample-test.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/simple-test-fail.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/simple-test-schema.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/simple-test.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/test__resolveuri.json.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/01-type.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.test.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.yaml.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/_makefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/_r_e_a_d_m_e.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__schema__data/tv4-tests/submakefile.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__variant.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__xml__parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/test/test__yaml__parser.cc.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/~2ehgignore.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/data/~2ehgtags.i (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/fncache (100%) rename src/hos_libvariant/src/{.hg/store/undo.phaseroots => libvariant/.hg/store/phaseroots} (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/store/undo (100%) rename src/hos_libvariant/src/{.hg/undo.bookmarks => libvariant/.hg/store/undo.phaseroots} (100%) rename src/hos_libvariant/src/{.hg/undo.dirstate => libvariant/.hg/undo.bookmarks} (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/undo.branch (100%) rename src/hos_libvariant/src/{ => libvariant}/.hg/undo.desc (100%) create mode 100644 src/hos_libvariant/src/libvariant/.hg/undo.dirstate rename src/hos_libvariant/src/{ => libvariant}/.hgignore (100%) rename src/hos_libvariant/src/{ => libvariant}/.hgtags (100%) rename src/hos_libvariant/src/{ => libvariant}/CMakeLists.txt (100%) rename src/hos_libvariant/src/{ => libvariant}/Config.h.in (100%) rename src/hos_libvariant/src/{ => libvariant}/Doxyfile.in (100%) rename src/hos_libvariant/src/{ => libvariant}/LICENSE (100%) rename src/hos_libvariant/src/{ => libvariant}/LibVariantBuildTreeSettings.cmake.in (100%) rename src/hos_libvariant/src/{ => libvariant}/LibVariantConfig.cmake.in (100%) rename src/hos_libvariant/src/{ => libvariant}/LibVariantConfigVersion.cmake.in (100%) rename src/hos_libvariant/src/{ => libvariant}/README.md (100%) rename src/hos_libvariant/src/{ => libvariant}/cmake/Modules/FindLibYAML.cmake (100%) rename src/hos_libvariant/src/{ => libvariant}/cmake/Modules/FindMsgPack.cmake (100%) rename src/hos_libvariant/src/{ => libvariant}/cmake/Modules/MakeTBZ2.cmake (100%) rename src/hos_libvariant/src/{ => libvariant}/examples/CMakeLists.txt (100%) rename src/hos_libvariant/src/{ => libvariant}/examples/README (100%) rename src/hos_libvariant/src/{ => libvariant}/examples/arg_parse.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/examples/convert.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/examples/example1.cc (93%) rename src/hos_libvariant/src/{ => libvariant}/examples/example2.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/examples/list_example.cc (92%) rename src/hos_libvariant/src/{ => libvariant}/examples/map_example.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/examples/pretty_print.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/ArgParse.h (99%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Blob.h (97%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Emitter.h (97%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/EmitterOutput.h (100%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Exceptions.h (98%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Extensions.h (98%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/GuessFormat.h (80%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Parser.h (97%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/ParserInput.h (100%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Path.h (98%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Payload.h (97%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Schema.h (99%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/SchemaLoader.h (97%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/SharedPtr.h (100%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/Variant.h (99%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/VariantDefines.h (100%) rename src/hos_libvariant/src/{ => libvariant}/include/Variant/VariantInternal.h (90%) rename src/hos_libvariant/src/{ => libvariant}/lib/json/JSON_PARSER_README.htm (100%) rename src/hos_libvariant/src/{ => libvariant}/lib/json/JSON_parser.c (99%) rename src/hos_libvariant/src/{ => libvariant}/lib/json/JSON_parser.h (100%) rename src/hos_libvariant/src/{ => libvariant}/libvariant.pc.in (100%) rename src/hos_libvariant/src/{ => libvariant}/src/ArgParse.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/Base64.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/Base64.h (100%) rename src/hos_libvariant/src/{ => libvariant}/src/Blob.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/BlobMagic.h (100%) rename src/hos_libvariant/src/{ => libvariant}/src/BundleHdrEmitter.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/BundleHdrEmitter.h (95%) rename src/hos_libvariant/src/{ => libvariant}/src/BundleHdrParser.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/src/BundleHdrParser.h (91%) rename src/hos_libvariant/src/{ => libvariant}/src/CMakeLists.txt (100%) rename src/hos_libvariant/src/{ => libvariant}/src/Emitter.cc (93%) rename src/hos_libvariant/src/{ => libvariant}/src/EmitterOutput.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/EventBuffer.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/EventBuffer.h (98%) rename src/hos_libvariant/src/{ => libvariant}/src/Exceptions.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/Extensions.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/GuessFormat.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/src/GuessScalar.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/GuessScalar.h (86%) rename src/hos_libvariant/src/{ => libvariant}/src/JSONEmitter.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/JSONEmitter.h (98%) rename src/hos_libvariant/src/{ => libvariant}/src/JSONParser.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/JSONParser.h (89%) rename src/hos_libvariant/src/{ => libvariant}/src/MsgPackEmitter.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/src/MsgPackEmitter.h (77%) rename src/hos_libvariant/src/{ => libvariant}/src/MsgPackParser.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/MsgPackParser.h (89%) rename src/hos_libvariant/src/{ => libvariant}/src/ParseBool.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/ParseBool.h (100%) rename src/hos_libvariant/src/{ => libvariant}/src/Parser.cc (90%) rename src/hos_libvariant/src/{ => libvariant}/src/ParserInput.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/Path.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/Payload.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/Schema.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/SchemaLoader.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/StackTrace.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/StackTrace.h (100%) rename src/hos_libvariant/src/{ => libvariant}/src/Variant.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/src/VariantEmitting.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/src/VariantParsing.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/XMLPLISTDefs.h (100%) rename src/hos_libvariant/src/{ => libvariant}/src/XMLPLISTEmitter.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/src/XMLPLISTEmitter.h (98%) rename src/hos_libvariant/src/{ => libvariant}/src/XMLPLISTParser.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/XMLPLISTParser.h (92%) rename src/hos_libvariant/src/{ => libvariant}/src/YAMLEmitter.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/src/YAMLEmitter.h (98%) rename src/hos_libvariant/src/{ => libvariant}/src/YAMLParser.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/src/YAMLParser.h (90%) rename src/hos_libvariant/src/{ => libvariant}/src/argparse-schema.cc (100%) rename src/hos_libvariant/src/{ => libvariant}/src/argparse-schema.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/src/gen-argparse-schema (100%) rename src/hos_libvariant/src/{ => libvariant}/src/gen-json-schema (100%) rename src/hos_libvariant/src/{ => libvariant}/src/json-schema-v4.cc (100%) rename src/hos_libvariant/src/{ => libvariant}/src/json-schema-v4.json (100%) rename src/hos_libvariant/src/{ => libvariant}/src/varsh.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/test/CMakeLists.txt (100%) rename src/hos_libvariant/src/{ => libvariant}/test/TestAssert.h (100%) rename src/hos_libvariant/src/{ => libvariant}/test/TestCommon.h (93%) rename src/hos_libvariant/src/{ => libvariant}/test/prof_msgpack.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/test/rand_test_json.cc (79%) rename src/hos_libvariant/src/{ => libvariant}/test/rand_test_msgpack.cc (80%) rename src/hos_libvariant/src/{ => libvariant}/test/rand_test_xml.cc (80%) rename src/hos_libvariant/src/{ => libvariant}/test/rand_test_yaml.cc (79%) rename src/hos_libvariant/src/{ => libvariant}/test/test_argparse.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/test/test_argparse.sh.in (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_argparse_merge.cc (94%) rename src/hos_libvariant/src/{ => libvariant}/test/test_base64.cc (99%) rename src/hos_libvariant/src/{ => libvariant}/test/test_bundleemitter.cc (91%) rename src/hos_libvariant/src/{ => libvariant}/test/test_bundlehdr.cc (86%) rename src/hos_libvariant/src/{ => libvariant}/test/test_bundleparser.cc (94%) rename src/hos_libvariant/src/{ => libvariant}/test/test_empty.cc (90%) rename src/hos_libvariant/src/{ => libvariant}/test/test_extensions.cc (96%) rename src/hos_libvariant/src/{ => libvariant}/test/test_guess.cc (91%) rename src/hos_libvariant/src/{ => libvariant}/test/test_json_parser.cc (91%) rename src/hos_libvariant/src/{ => libvariant}/test/test_loadall.cc (90%) rename src/hos_libvariant/src/{ => libvariant}/test/test_memoryoutput.cc (92%) rename src/hos_libvariant/src/{ => libvariant}/test/test_numerics.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/test/test_path.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/test/test_payload.cc (95%) rename src/hos_libvariant/src/{ => libvariant}/test/test_roundtrip.cc (97%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/invalid-schema.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/invalid_path.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/README (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/additionalItems.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/additionalItems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/additionalProperties.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/additionalProperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/allOf.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/allOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/anyOf.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/anyOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/convert.py (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/definitions.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/definitions.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/dependencies.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/dependencies.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/enum.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/enum.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/items.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/items.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxItems.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxItems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxLength.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxLength.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxProperties.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maxProperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maximum.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/maximum.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minItems.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minItems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minLength.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minLength.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minProperties.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minProperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minimum.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/minimum.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/multipleOf.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/multipleOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/not.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/not.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/oneOf.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/oneOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/pattern.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/pattern.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/patternProperties.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/patternProperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/properties.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/properties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/ref.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/ref.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/required.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/required.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/type.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/type.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/uniqueItems.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/jsonschema-tests/uniqueItems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/negative-unique-items.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/recursion.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/sample-test.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/simple-test-fail.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/simple-test-schema.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/simple-test.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/test_resolveuri.json (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/01-any-type/01-type.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/01-any-type/02-enum.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/01-any-type/02-enum.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/01-any-type/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/02-numeric/01-min-max.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/02-numeric/01-min-max.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/02-numeric/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/03-strings/02-pattern.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/03-strings/02-pattern.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/03-strings/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/04-arrays/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/02-required.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/02-required.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/03-properties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/03-properties.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/06-dependencies.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/06-dependencies.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/05-objects/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/01-allOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/01-allOf.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/04-not.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/04-not.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/06-combinations/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/07-ref/04-ref.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/07-ref/04-ref.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.test (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.yaml (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/07-ref/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/Makefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/README (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_schema_data/tv4-tests/submakefile (100%) rename src/hos_libvariant/src/{ => libvariant}/test/test_variant.cc (98%) rename src/hos_libvariant/src/{ => libvariant}/test/test_xml_parser.cc (85%) rename src/hos_libvariant/src/{ => libvariant}/test/test_yaml_parser.cc (89%) diff --git a/2015-05-01-Note-16-47.xoj b/2015-05-01-Note-16-47.xoj new file mode 100644 index 0000000000000000000000000000000000000000..36b0033688cec66c001f56a95dc17e43ac057668 GIT binary patch literal 39638 zcmV(=K-s?^iwFP!000001Ejs(vhT=k<$3R?sHponBAFi~C#3Gz=v%c_V<}ozIizyi zzL{qq0>8D8+`Ep)(b_j>|JNazA4nt;i3E_p{qO(&&wu{mfB*E?zy0awzx?jU{oD5A z4}bgR_ka1r@BjSsUw-=CkAM03$N&D{{^7U({`0^7^)J7Fy|{hr-_9SOC%^pZmp}jX z-~NZ5|KaC<{MUc}=`X+h@PGaAx1WCc;g7%k@-P4QZ+`R7zyIZr-~RbezkK`Y5C8g` z|M&O*`q!WT_1}N@Bi_C{nJy_U;gmJFaPl`Ph0=?^Pm6phaZ3V z$DjZF^Iw1Wy&`9J^sl>DO`uz&0OQ{7YTK7P37w|4!Y-{-e;i{In^;kv(VyMEu> zxAXMx_O1J!`uF+ve!g`%_x)}3AMS^q`w#oJe>+=%<9tB-w)F!2TbnO%ZBhEwKZEw| zJ_;P)=B{s^YVOm&&u`6D>R+0&e>4G1-OjJB{%tmO;A-F6^X>I* z&L6Jh+qOk5`}V`Ne;ZRZ@_XMNj@jd--m{m-9bca#8@WHPjc?moV1B!f0!e34<{@++ zF72UoYwj3L&+6}|DVLh{{Jy8@{r=6!K!~IkUDfaR|C?A4F203i*SF*Fs8VkdPUAVh z^|Kn9MSF0w43AAV(j%Q;dI$v=T!Hazo~q111QQOg0@ssma|@o~yQ*z;0eXMz58y*jAtVKu zSWns8QJnIidt2y$AN6Lo&t#?PBCCKZ%O1KJ09Zu;h7eHGDc}RB*S7mrz;?firqZK^ zVm0Sp%<+sxPLLEP|M1)2u#Wv7FKBzagUJx*0iFST1}mnLKni^Wgs=cY7$7MjK#w1= zZSI!3bPN@KfiK5l&r_$?ofBJY$u-;+@N|@7yN0^V}2eE^e28|ig0~(+q ze1YG_k(v?&6G;6bK4VH}eSY6!~ULK46s-fD#V~?Sq*mfFuxr#R`PN zp#naEalAm#Re+%tKzLRQ?o}x?c)(radydpt)VUcvW^jhIGq|-jN4L*seJPFQ+*7xw zXaTw{kP{=m8K=9g0@NRhhE?a4DhYDuX~8xl z_TWTO=X@5vS^eoKeDL~%lJis5-p^-kX(eWjp6d67QUk2-P{mXx`c_oeO7{_!Lc`gc z`yU!k{O2<`=U6DmP3UWqW-oRWfGUU`F_7l3CUZ~C9(rjK!RgPunKk~J9mQw+q1o~G zHP|dQfrXoXfT2&RKTOr&R*cmwNoG!T8UBAJhctQPBWrFDvhb+ zNs<%@?i7#`43Or9Ml8)M^+KzAQVXRrrc&k!VU)xu#7;#>Q@{wue#)G~s=I5TcUDSi zQ2j~uuh5lxj+EK<{J9qDxid0C6+*$*DsBb&(NVTiv85FhO6@_^mzJ^bS5A1=yg=>F zdD4alEtZ~Wi&3sHMoblV`dLZlwNQ^;U?E9?leHjans_9HT5OYqkZOe_XM|e*Q7Mv7 zM#wIsncXxxQ#34;yFj5UcN4DRO0sG{_Mjm7!`SCsh@IO)y)VQb&xrk>%ar5^lz7*AqLK+Jy_GP1b;Qk#E!m zO4D?w9<7VdpN9nv_K+_EQO+!oU07f*QWc1zKZE#2fYMl*RgVBI5NIJ#+|VIyIooyy z+iD*g%DD~LM{M`K4?V*AImB^C7!|jAa^)T^Iphfa)VA>>R23U9k4NI3w>o!(s%q^h z04mY5bn6K_P=nmpMFGv*?l`7acHBliz3~yPwi^Ob!Vg}FB{}$4-xvlS13S?xyxIVgVqSEhbS;s~!l%1_NCpKc0 za=wSn&!`=7;dYuXY}{0zZ0Ny@vk+6+s>#F7u}&N1FiQD%-~C-fVcfE?2fZx#diIHe zqEZUh7v;};q2!c$Qxp{CX{UR%r9$$nK7?MZQlyA!RHVSU4=AtC^tqQp3_DwqmQpAs zTa!tux+aqm6Gke&rq-{XwQg0W%Ix0DY;40r^OmY^b@jG>m+B*`dTa`3sp_#UtOJ8r z{}Mr6Bj~BViz8Kv=87m`exY{FDz$8(aV>wAZEok45?n27TQ)*+!id@N zpjmRWo`H@#m151Rr_7j!8r$Q{Kbl86Cvfd~g7c}>8fhbq18<@|xD-jEr+;V3VAt+v zv`izdR;x_ZT-PV0u{Aog(?;K;(o;ipMN~393-#+wm!!O&o%#8q(%cr6^d|Cbjac%F z$`lgiMNhSbXKts^$37J5*MIhmGCxs5T)>D4NxFTPo|4|O518^tZpk#`*n1S}tc`ke zQ>qa)jY*x`sk|qGH66ic7&j>l!f1x^}Fx)_geVu)LA&NqxX%TL=mo4U|QF zhXu=Jeyk6AK5g0W)w0}#2t{vOQNDVVr4-5$E2NgGw~RZyrDGV^&f$<-#;J^Dtr7g{ zH<`H$#mp7gX&n{U8L9R{$LqU7_u@}eP^Ey}YPAJBpHbRZ>dl6Bn!6SmVq80?8lI0F z#&{i_S00^drRHG6Qqt(-Gq_x*3m?l=|2SW%mSJ-=b@Py@C|@X~fsw|j&^cErdZrpw z3U*9!o!Y6|IV^I^bV4FoD;uZ!pdHvp^zlv6)1_1mdt3d(is~MzEpWM?!R7uAZgrV@ zh61aZDsimdN*ufPG_rW@k|5K1A<-pWRZFy12rY}4ay;N#1+@66NgD89p(K{xWMy$F zY7)XxD}-v7ZlxtmAGm>{JmOcJYy{66G15j*UZohN&9o2-x-=#UaZyk$6Ni{|v_-0m zI&Gv@59>4c@kU!;rHr?7WF!*kJ5ho;<`H8wMLMk{ixTbpPT!BCxXyiN=D4@;pc>(4 zbj9D%O|4EMf$G!NU2W0eNQP)|)FXf1zh-!>ArQ5NL>aY>)_iQKktidi9tvGA!=YCQ zca8ZdcF=q@5txtaq000hc+#&xAQc8-y-dLlVTT$uKV+iP>K3{O zLP0jTLU$@)ezQ=j1p01buAA6s^O(T(F-^k!7w0DE*ls7}aUYmTUZPC`5lhq+SqqJl z?XT~)t<)Nqxu>=Y1*`Uy!_l%{Tu`kRb)k|_*hHEIl+1~mWnVZz#*z$qAkGnI2V09>cPs550b3hI5E*exhm0V0}R^&$$@fjg2EgeiIxUQE`zzwm&7(P`px!L z&b*Jkg|cTb^VsGJE#wHJMJsScIRjON3a{O@eI;rR;FyVQ_aW z4*hHS@Kj*IkeD&)nB`t6G@(RtO*SN>CnAfwr>s_kus}A8+CbM?t6f+i%Z_q9vol3J z%x9EZav>NxTuo|QR46w>g(d={(0*4bY-pnPwl9Qe5mMjv9W-;95)t^QX;ca^@zoYh zCn2qpMra*IthH>XyheL-rES>9t(K6snYAVC;S|wIl&ll5+kHD8*QU?x?{wtml4OBAH6yAksVS2oSDjF zQa-3SRvz{)+REPz+R0B>fRlIuPVX6R=}!WvOt6epCX5zRnHYa5Mr^UylX=%S3BKaR z-`)n{XKj{AJ$68{1b_O2LD;Y4=U=HGi>o}`WN{U%EHv61Ezf)(HY}7U9@t;SezMK# z=)s7i4)L-~`sgAy;>)@%BfkCQI5aTAr2h~hc3fiq|BRv{ULw&@fAqOt>9)xWMI*ld zOy5;0UmOV)&OyPdYTy6MM$LUS0~(qLP}?n?J~qh07*BtIjM0F|^H3l3Ev26ZS+Yr= zKU!hz!1TH7{-CeWg5q>=r!xX0c}0q2g~YL(EeJjBJ{QNT-QrlaR6L3wn0ZvPSUhS^ zOL!FbG4rVG=|))I{U-9==)!4KWn#bo6?(s^G7H5laGCc@>o$+5W#R+1T4SvqX>`?F zkFLfHK_D+vk=$b~1U*G^qkQ&-v36_J(n7)1M)2rD-|0o6YzeJ>rm)H`#K5{MPM?^I)M}mQsefV) z9S2HJ^dJ2v$AKcxr_Y5rQKO>2e}Ze%mGC9jZjlFw7tU<@MGsj zy2mpl0*peePBoeI1d4`!xV=C{#i}0DI$PiZl87e!t$=~7Cn>5H&>!*61IjVm0I>mJ z?`|5XbBs@ce)=_4N&y1Y!)vAi&7q;Hl+G~(`2dfOgcd8G zxD)l^2&6z63^-``<~YIo^=2A$s+4rsRc(c`RdNpwDvdG=wf!PjM>-P6`g)hEa;%*D zv^%oa14W!l(ku8*;#A=)2{T3R4sW<*`H6FBZc}!4wjS#{Y*0^qOd<>I-Q54pGr%UN0a?zQ$&PGKMD4R zLj%p*ZvOGzwt2=!k^8+6wqhiO8ls?vekuBd8ZHbr7=oiS8GVvrY5hvWi<$`qm;(Ju zQ-^v3p;&K@cOLUD+< zIgCbw?C);HPEh89La?a5XI6(x9%1}KA^Ln&&og*sJBIY_WrDWFO|Khg(|YP=W#wZV(%`dM zX^V6B(?;YTUn$?!<11J358%UV>T#Zux#&|#)3Q>`PxScj7h&T_Qx2yc<4F4mt`-5V zQ!X9jk*lXYG8T9}d4I!kiHlB27hu?$Fb<;ea!)#rG;D>V%0r4rN_Qtm7&{?=xn&u9 z+I&RVkl)^0jc2{SJ%a*_=E?O!50&&{p)8}`JQeDeg#c1=M8${YkbznOVBGXgD!*=D z>aJ>pL7M*zNL`VleC%!IKM2qrN9ZRx*$mXs{>qCL6{SE*F;o2$x?UnE$eaONe0MmD z%zb)n&>~~h2=i;*B&6m8-Pj!s2&Q)7JPxTTYBnZ z%o;6^?_s~M%$9CB6FhU|nYrmk7eu#9N$P@UXb5(R(ekWWY|@&tX*?ohvi<06?&>?jy&uqrNX$T&BUD$)TWi>@|-91e^2P zv(wycIS+6-ZS8nAVy6?FjhQ}KAA!EdA#N$z?`&DaG4R4 znlfH!StrztDrKg%LlvZxnW{e1^GH+l++_EO$s2o^T1?JkslDS&Z!>lAY)bH&-=vR| zOY12lzPRS}XjD`BlK}me;V8i79p?hi{?#Bi&3&f*gpGE9*xBYz-5@ov9^NZX*4rmJ z>vFB=lXOoh!}}!BEL+8y(No$0%(jC0doa~3?Rj!OrQO<8;?^vwo@HoveaC)q;^%|S zC(wO3%sd*hLeQg)cR3WPFR}oMXoc9D8cl3ILU%42LeF}Zd60yL^S%bU6TtM)ryk<9?I`dKS^j z3^<-Cu{-IF0U|CZL^C7!0Onu%D!@O$9K~ zRgXb7#~{1lZ+d3`QE5pO4je=;41DAHzivq(nj55K)W+=@#jsHew3VhVR-9I)v3{u@ zR$a9K#X)UDu~Mti*{~2w$wj_NF-G!fPbk1<4*?moD{Pd2Ezh_OW|As}YSBqIrCteKFAsxf{7czvF{7NWr(HSn20eGaoY89FI3^2$V~eFn zk<%xQq5z}#y(b^OacLhw7Cly4c7LPh%-7+#>Y=CMDqW|U;$8?w%}iWa8T z;iHCFH=T_5>%1pEGKeD<0jd^Pegdt=&*vWoabO5n>Zq5Il|REH5yLc}R;3ofQclRF zVU~A91T%V{9mBlupFr-67YHW`0hQL5z9l|Ua~Lu;RHH=a!~i1yDWgd6eMqYL8nV02 z|F2tnm*muY<-q@n2)b4dS_8G?miNT97z6-MX#R!N*bDSDTnfyb&2%IJG0I%Mamhx$ z)?t(_()47|SHj@lU%6iUv!>4KTu(+a zNJd)Vs)okS{CI)08alXIgQCar>ghPvk#Y|m@qU4;72xiS1Yg(|^<&AkphR6g5|ltN z#-T#bIcY%WIh7c`-XzX-)Lb?)W32U{4=()3zV%1D-Ktk?W0;xRspxEtZ4u%?`xMkV z18uT~yg1tF%?&z{_C(sHQ7Jl659iKJ=c&=qebkdAGT(f`jZ!&6l>`whA@LE46$L0q zsKBnX!~}=D@)BgAo6`Id=jPOan20K!;7SZ$SqJZm@OA<~tTjrDx38thnea&Gt5k=i za#p%H62L26T#ory!oIh)`Y0&N9eF*~&DO9(>brevV zMnJmCEHKUjO5kYFhjTW<_X<-}3dsWJ%3GP>3oNL_m`aIw%4O%?9l`0TK*~&Fj)|6Y zib-gs=6>j6HrHgyKuJ?C&xuUrt_Br2Q0?x^K%u3xUK)O#Q^=!+Cu4qPsG&C4E{yP9cod#)(F_RdSA7r%y2`2r&~Mu9s+*8t&~ta9R{e=7(_WyTFL2k8LVHdGFF(Z5C*hT$5Ebo4s(N^I*zRQJ!yjCTe?z zW1`{~1n{K?$PEq$NjqX@X>!=59{I%40)uRu9OP)VL5_t%4jJGJ1jFUq9*7IgzWg6E z@n<1C9&sX9a!(`DM9B4AX)+Zkpg1`>(<^#Y0Rf6li->@g3RAB7ibk{7rcozlXQHq5 z{_Wve{SC{MX(2SZKL9UIe94Oz@(jh_Ga`R>hdH;fsozBzd5wxPaZWrPT`1>6MG&^w zunk8L%F|jAgz~O7)o`yi)#Q6BI^kfgNY<~!?A+X2k)Z9g6sYi)`E{_rcT?z##l)(gr7$u{N*uyO43zU&}uf_sLb46Fy zGmT6kIk@+;D1)=PDWg#nEyC!16)kYHckktQOq8NIh;X*xuB~DgTi=LM%y2eyrP1Z6 z%wrV)g1$1hm@zI@W1$*_K0eEXG0!am=nAFz!EX}ESm;1L38gciYbQ{(PzJvm5f*0- zBGqG|NtlRGdRm$Dhy^Tkn-7(UF-Bsc`*@@6Rm1(}U&{OnwV7MQ>b=m_9i~+M6-s|E z&q4zKJPV10R6LPlL_H_n!$$s$j0*J(C2FzIWRyCQkeN)OXi=zF)&-BCOJRl*PZ=D0 zRr*RxPK}FZ0dcODhw7i^5(zmy&xm&XikdN<)FTX;M(IvfXj;>_yVGhFO2df}Y5xkP zC7@95{tM;4KF}z8N1;4+mG&T0Mxop#7s_l~($cg~mI9}ZvXHif-+iXNqZE`XQz%dH z>doA}7fNG*YbU#nTZVb#GbK*0yGcVz3uo2Jek(1?aT|;vV&#%th|I#+Kj)a~AQe zg?4gP@*NSaGTSIZ!aSkK9JPfAS96FEHm1<{w$}y=GMa3LmeJx6KdU#D)pD=E zRZ~JplrTDw!`mz0Z6W%gGSxrTuCbM*_cNrqD5#ZNV=IkA92w^MyZBo28?&e7x1^%v zw`P^JCP`XpTbi4M^?1G;ZLgS2&v2K*3@7eT`6sPElM~TxAt|l3aLwXSH1?Xe(!E4^ z^-t8*Y9)FaF<1O%+UQ)0q^an#P-e|d)1I|LmvWgu$E;OOqIkgov0+KVMHJF zrZ`Kbc*Jh!raUT;wE9lVRHi5>uG7v%eCB8Hl6$27sYk3%v_FJn35|KG(P;-DVI%SxOn89N@M^(hzt;;wSeOKtr71wVPUFcFS4vCm^Mwy@4 z-?=T6DUC_BYsRZ(T1VAt_wVp+0^8~zDcKYYXdOb)lMD5>-Ym4;>rJ8kb<17UzMVeL z3iQ%a)N08v^+?*A`Ywr0)TQSRp^cXNLYkd=Q!`hkh$ljUu6)q0PjXl>pW-FOgBsE5 zg~sbm=xMZDm)pK%VG0pk`Pt=xWA4QT=k@GbGSr9}sP80E305^NRD*i&XGlhW$Lz$* z$5MrWQ_n~IeCk=}NKoI6x9)?hh-r^|h$WnmbP*#)-UuGS6~$agjI23LwHwj0h4#gh zrqce!m~$K}Ja;1uZ#pquyOrmTSsshb{zjRfr{0ua9V4OdBxCT_Q0n2RudiKF5U zAdQNsq!Cjoq0B5@Pvb6KFODNB9eKOCh)^`cGsitLV$C(8?-3h$z0uy+o7CV^CU;mN zL){kD{;_5Am8UyOIrr5gYNxky8WNSlYiPUIv&Q}=zw5EDEosmr8nZM7`4nkXdhA`B zN6ZLm=Qojyfm&tQcbN;Vto>2@tW4*H^2p!F_3<5)sCKGHYG=y6XxXfD)E;~6N={zS z(ji;lDM71hP-f02$2~`U&STF} zpyYWW^8AJzE-h3ih~lk6Iadpjk{Kj#fQBk60o!9B~Ts9%4R@M=j4%21nQ8Hy&G?YwPRtqH}mMuc* zla&}sDT{TEq4deJXe!mQcCSX9+vvbvJF$9}dm*E6bL&o#EIr-`ecbh-*%nG&&!w=& z7fMaR2oK^yDd}Ab(%k*i+)>|IjZGJ%t5Qx&+KGZSSChJOk`(1@#%GG_9%rI8M&T#9 zRVMfz)0vSDH?^=VO>;r`O$O7#OLCkP*Y#t^{RRmW!NHX)yioGBd@L=sg2;8TK%vwO z0*$NW;=xVp?A#0O)Br*g@ptS+Tp#mR?UXH0ebD}<@7!6*-bY@dk_DoK^rt||w;WMR zIF}acTtAc&C8&G1g}AE}JG$IejW(q`POG|C0VCEfqm6vX*x$9P$~GU_MXq`#%|JGN zX%v3O9o<6sK^H<-HbSp8LN^!kUQ&pCiV?dqA?=Qh8gf?%tA&uPIqH$@DNxX7u|hf> zG^$gIv8|Jj^Oe!gNT<|BSO)c-vJk0uSyR`<@=VN}rcrZn*gmIUZ*wu*_?OU;oG7qr5)4qT=IsOUEai z=u?2oX=pBY>LY#lsjJ$Yruj@|f(L3}Ny{SE&wllH-bI~m!?~f?1?lPbml4tP6~wCF z={?N!AaTg~N_KM*%9@hnChZLuIWxO-jWJtDWk&DBX74C7E0?9(ugjBH5(@P(+kfox zrHut@PnTV;+$NUAzb`xH$CS8y#diN%{$3m!)q)FkBwLU)RIU7`R<22T#XTLTawa^4 zKG?7+8P-M?qNEAqu3Q0)ov|{R3FIg&kiI^ALy9w%mJyh)Cu2}yBVWtH(I}~pXucvk z>7!D5h4aWLuo1+_O)drY>sR00l`9Q?HR!Jkk=-1gT+SmFMc)KAl3tDeD4!ZVRr0X{ zvD4IRnbAoFaDlRlCbb!Z;0tHis^Wsfu*u^{UBKl=G!UTMxZfD~wG8G3Kv9(jtp#ST z&jM`K^$mliqVHVdxzAYr!LLV8bT1AC;MH?v5RTlPo_{m9c>46HKfV_?C!cc6pJZ1j zsXVh&8P^Y-KgcD|nH!!USOf8iK{WXHRvF?EAAGELvQ&LbQY-w7Xvh9?B~m+lO>r)= zy6XpuVHy*EiI2I1Bc$C|2rl zO={e9Bz^GG(Oeo#W4LcI)xdC6h(Kjpy9gh=b>E!rpH3;`ngTPI+8U(VfYY<4wp5QBul1EkYp`FVB5WJpzc%W2_2-(`-Qf-XG|uKh~n9#_+e9=fNF3u?Ke6H*JX?g_Ba2(Sd?K^K?72D(j@k;e?=Ag^;-H%z8AeV3O?Ym0gsXIwBQuL5a3)4wZHtbf8-LOJ4f^r@CuuVfSf!P8 zG3eY=2{_rvZc8|PB}9-EU^{nEDjyi8rL-CE=_;V3t(&VRGeWR_N2-AM{gp;=?2?RU zpk8vZQrpH73_3@07s&SX1_%>_-4_JUy^01vcwONzsWl3H+dYRK9E>YMOGiZ*s00dFnR1a-q zTB>dIG{UaDi~Yi_(;3s9hDrkCa)v1ed|Q_~GjA0ro;tfC$Wvi*1iJ3PsEq^nVIX0M zhl8;Co$RDU^0{c~ck0#39G_xT+1*q2EAvtw`zxnY%4#RtOC#)_nZ5D|EOg4qpq9z_ zcC!6t7OO25|3|ZZ#H)VyOa#yGEBm`;$ywT?wMJ@(Y?Xdz?`Gx+AsjwVjxvMHGiLgo z5sH+C<(l7E)%82Ax09qwX(Q#gEzJUHzBEV^A)m{_XOO3425C4Gz#?Xlx9F)fj6w!! zVv2K;GDI1qsl*^dnGDjjAV3I^K_`|A>WgIww1AsucSr2okS|y|`EsTcshSXXCcyl*_Ymb9YM8$>A+`0?!?_ zAWx%XFJ3nZ$A0#-7#bW66C5Ag-kHJinJO<$$pps_&XYp}+6pw%aptwl5rlLX7}2f4 zi8L|vUyyB?OCznT{`nAtVBoaB@-tmBxt$?BMRgrRMnH3aMrNqc&qrEt0atot>Q?!T zuqM+*MqcY@oL1$}O{p-RXZ%bF;h(WW1Qk=Sr}PF^fOkntc~!01=w$U{S2dA zCd0>XK({%?>D;>IiJ#<_P^Q_~~^aZ-wWqxyf&YF;-{9Ip$BbrVbGAkE)j*rRi#Qg^#t zZkY~L_|18WuS>qJuh)7qa{D?saddMy%cau55eUC^0^-Y@hrbPF!Zg-d2)}a`fUY_g z@$b?6n-c?m=K+a+UyNb?#_&!QFUJ7<#@5g8Ts`!=F;@9I<7E#=0N<`xhHT$58~#JY z1?Rn^{Kkr%lTw#8>NnEs1zpha(m@@v!%}xrDGJ z>Ni_PerG-#{U#kPzjJNW@7$d6n_bTK@@&%Y^orB(+`H&~b}RhO6;i)*fux<}i_vd1 zdw#PS$oE+s^*i&r>UUQ_wPN8K>TibKF9BoCvqtigP#wUY^9*#HyLR3dymgD;v(|TM0)*H zdSWf^C;>`1GqZES+lPLWVMf2xB}c#0bw|I`(Ne$Du`+cGWphc@!)ZcN2oZFv-x)~D zZ`_agP4K3E=MAd*oz9Z_omXY@Ti0Ka>LbGe^}CnOqfl=B&h!G=W(B|Lce-QgcLskY zeH5O@|3{vEzaRPR>i^RPjNb(CP!}OA`klj|-)ug!odkjK|2U-Scb>HI8z)QN$F*Mn zf3Cjc6374J9IxN$WDc#u(O75i{gE?s_;)&0>UTPVpX89-^IF!-Ac*_lMb^pGT={+E zZc@K{DxUn#bzHwQFAKk)F^Uv)A;6qSlHY49?#z+==639~lqo%=z#wy-K<7e@bbpMT z%~Sh#r6d#}@4G>&Teuli8g_0H+sG1=PMRdgg%f11pj{S6v)Hw>IZ@#*}Qo7>;+l#KX z;DAe4R2ZDx4-U9cA@cSFE|m~aviF>0&gY(XDP6K)uyY&+z$BR#A7^$KAhEju3#q_K zums@dB!JB3J7+6oYH!3_1F)v)H8Q$iuhi%UEUpEvswX0rs(^c6zJTLlzE%y5o7YAG zmR^CALk7UbAp_t}r_Ka3?gX0!4vrE4cytQ%bjTGL9INHR@yMF}l67!C%FAuL;e6&{ zCRP9(oP7Zr?#qClY$-5gcnrB2e$Bf^d&Wgov%rm~Z7yTsHr)ywX=F(jn=vuWd@~~F z?MymDvb7huJ%i_?@0_9`*7087iF*qa8dM~i!nu(d{NTx^$I|n|y0tBB6Om5l& z5Qeg0Kq6j6Aj4czs?WKXx7VCxN%L<@{y8(hn|}Aqfb8FA_wS+AAu1>k?I;i(5ul3# z&}ib%3|$2nvH~&80)Bxj@ReXk!+T;Qjpxc*po@mTzFAos$&3U*n&to|$&odQJtj_c7TpJtD=Q)Ub z4y|FH=rlLR+Eg?+fD91fSa|?B&rBhLO?sZJ=V_D<5R3Sot-eyVdlc_&CWs4{M%oFl zWJ`?H^U9II))pZ6I*oPn%DuwOR6GH$yp-SyBQ%c4*gdZtGwewQnL_BvacOul;!>1CvOo)^Bc~BYi9(rPtxzWFa(#I06-vcNt(23T5k`PQ=~h0wdkUpHk`X~=h0+bD(1l6=?GREZH`#?UIfaqz$VPcIT?pf`5J8EBQsFTr z*ftC4Y_?EyePNj)i)x`vqiRH0U?I%ISB6N~K73_j6&r|+a@7_i>PW3nGm}PeAzNQD zb8L89D-`qYSSYQ*g~rzs*^fMq343!~At{g&ZCtKyq>Z{`d=8CHAQKrHOfH|v{bfsC zW8jnAQrB1@Zuu&3Zv}2Hllrfoq~D6_=^OXo0Ma*B&FNgxCy;J`2APh~-wd=fz?rwP z$j3U>KLK))jmgG7Q*Ie>cTQeY6lQ_A^`$^ub|a7*ID^4;WPr?5WRM!)0{8kREhz>m zssv^pQ!Q}UYm82tqx zyi6IX;u>7j;7nPyz&Q%!so4SyRst>~DsZpTnhsS2uHwW3X&nK;F8YSKAdsh-Dth7@ zB5+_*IdtR{Mnjr2<*SrO3lpbhf!tTCKWC~o>S?UAn`v-jDup`N_9E4l8lhgh1}(?} zu8T?&+^LTlOc#CTU9HD%kY^C*LOo9;j6@*No~ONq(tc7XFHJ0@Y{#G@Eg@=s*v{if z$S9*D3vn(1e}ol$p9`fu%WpQk>-_A_GZLXr&!@JBgWwfC!;-CMoPhh;XfGMH0;f-m?w@@x6ou-W#1(VjgVf2Zb|_`R+n<-*{{*Xv9DTo<*BUE zJ)oHo?q&2SY?5ITrSB2?xTw^2d{Bgr{Y95Zrncx3Y00i_p-io2)DQX~bmPYZ8k`Cm z-H49NI2abgeOu_tb1|WlTR<1?UXQXCA?H`-rY@A} zhK=qFpYeA$q4?AnS1az#&xT|1c(&)ps8A}EeskyiQRq0{Wj;KZ(QIkmi@W9KLXGSP z^gVB+J4~0nEO?rpGR=wBqulm=D>`uoUet z)S0Q-+j*pkS-czOomul}wzLguhR=4v$s8W^h7yr0!t7dabF~N)O;TP6F9!tRR9Xk4 zk->`6Sab$!#Of;rCeE#D9Sd8_x%8Phf4zT@8Wt9c41yB6k#6#G+Fxs9m=&&jA<}Xf zu}&MEtTMU6hRq;b4Z8B~+d_HnP^i6B$3RPe$z9;K&|sA*bgufYX-y}0&bU^h2^2~V zqR`1cn(t7Z3vsxl`ewT4MO%VD(cj&&xv`Vw0FV8Ed&IsWc8@-UJQHcR5l&=AjUA~F zK5{~GDl9^%k)|NawcFV<%D_Ehi)RY5FLd8qrw>9{&Wv{K1o{rwHI<1X zVJd~G^jN5N>d}^id1N$k=qt3H3+0ObmH3|x@7rF=9h<3ZofupeMlOwPYF1|*1K`eB=T8$p78iL_QwPo%^$rtL^8{Nl3_{19_ znHHL>f3uSWsZdCR{UC?K!1+#*QiH@whcjfvsrf?Zz0gJItI(YiTPQYEd)06v`&4^~ z$GK3)jd*un*4H?M0KVR6RNueAKON66jf)X=gjda?Q)i7(pNxnN(GF%;XzG<31`2!n z?2xJ^&Okac^x2waJSo|h_B_H*PaoXQ&$UN-6#Y1~3ft_S&K!9rq2x&y(XWkhxe0&G zxQ*BnD7Sr#?!i$j*ZYNMWJZ3oDjWo%Xuoze_Hr4)9gZQ9TduK^vau*M@ohRuX7m~5 z9RM?RbL7DbUA^{>2WNK+ooiot;11IU&hSDirBG|BkYyb)t$blOoS5jGAg~v9QU*F z?%z~En4Vn(!81lPZ%y#{X%}s@(_6+}bNt{8Z=v+*5`ve`WJU9tB!zg;^(n^?5=PuA z=_5{dAGqz${mV^pNxKZiDk*u9_eK(w<5J674%#f0hht<@Vl#^eu^gK3UImZ^ULlYZ zvR@c!WkC{p)e%Bx`rflIxD%5Tfh3y-UH2(P%KOh?&nw9C(o+N7jXKlA_i9xdu^ePX z>j{GS;+6Clxm-r4Lcp&3d?Z=;}5B zu5QC6ggx+u8%do1>;b~TMColdauSXhIfG1od*)6ez?A_c;e@qiqJ4o_BSwUc!~kbN zn7`ecaSnSGNcY7B=6WqR+6L*Bx&W6QCYZYH@LBx~RB0ynG{9Ymh62=u0^@jr%p?YY zR02?xq9MF0Wqi~&##CKk=mW$pccd(%+i;Z#a%I{Lk&5)DA|mchBJToQUQ;=5+bayn zKP14&>6;J0x97GsrUF@-LDuu#7UV4iss|ehY3|e?gY4-8#$|#SB&qxww^ysQy!eLX zvysn@V46lsy8Se%4z8)p2^juY=dL-|k92Dn;g3wP$(##tA0D3qk;hH1F^or^j55t! zG^2fFgp0wkW~1At0=5hj5>s4jqDN0>E2e;V=mJcR)mw96QM5Oiz{M1I?!se8;%Z=0 z?P=&UA%|x0oo>&X=(>0p;h;B+RBtecyn+1rY>D#Zx3UCyF5A&>G zfgpz{of)e9Br9FuzOuB?3OQd8kE`LTR-MvhP=_^7@<4rhymT%RQ*9_^*zH*u=xiR$ zdPa6ae^;gS-Q=hmxZy--wdJ1XqeAKtr9cMPuy+PcIU_rRMy^653Sq75ScY5<3&l+JceGkHh|5*Gvmf59M@5%D78l%h!q&5^l$I(*WqzzdNN=hw zpHUmD)zr68jDz3Qv(Ke`tl|H!_G8WI@0a4N*V(Yr^5KK53qzB^wn6B5l-ruaoj{30ZN5fZ<5dk0;|LJZ{iC{%qPK%C-hBH8?JN$t-}=OHk?&tLJJGBpcQbyqX26YR#q3aTS@FJNp-tD0A- zfQHyQP2Ya7T0wgwMpsBHixDj~Vl`HopAhS|YS$chThIZG(5+~7wX7pu)#|k6THCyf~QXblESvUMHo(H>7uKJpHc-RBu{7LfJmh34x!JcsX$bT0&_>AO3_C}ojy%T$Bz zyin~ox1C|#H2+{5uijpsxfy1X{qxMF?}Y|;SFn2Y&aD%Lj>G6{=SA0&6$|CrPN6&n z5@LNcg13y=`4}PHp_8S9kR%86_3VN6FZ9~$4DFxbE$oe!F`OlN{lGF=?M$m>^-t(< z_QGRHO@GI@U|Ftbs!!jg*Huwza94-w>)7Db79mjr*Mj(y%Jc={sW9sinDB zwM!b&G8>HOgVz?L^L1wO`5E$Vm6B0xNx`Z?wKK2WPUh9Qy`^8ccwF@zXP<5v=bL$l z!j-Y_*QmYgNxn|45%?&2jW8mDOh{aCX1G8hl}UKnnK{C&9k_NlgmYL+{?*RA*?ZEo zKJ)SfuYv9#l2AyaX@t(bP;h}t`4t+?=f&nM+G4Id2S$6O53M%0(j#-Sk%9q zg<=MLdN#36?Y_A~Wv&xxOF|>v@C%amVWhqnx>tRg9jCM{p$ogc-n=o~qr+UAZ|=x2 z!VOza-4oodnk!evD|@cs)9OALF`9n!@O^PttJTqEcBiH{;({~}Q0(#T!q!jUl zYA~WLezU!;Da3$O|1z??YVW?u>fm0hcGkEXF@7L(vJo?!GCljLuTbM0jhSki!6A!+ zdtZpX-9>1zW{3MwcRTiLp~30I^xd27oXj`El^uqh~DCJ z?H(=kex~n)ROaD3%Y4V~;xpp#y}!8|_NXuJXmn64iLFEA7kWR-W8*?QHqw;Q;j*&V z5k`bc-L;E|Fsj_^;dZ+b9tdYgz||;;7XIh^Wq!?6n`PySK&{u#7Qc1xeS-O~l1xS! z*jMQ0u1vn;EXie}zqxjFyUcAlt@o+bvV5vXqJ8vsTTadNT^tkX#dI1NE*)XHu2aK$ zCZzB5CS|%5>VwbamoI+J>@BC|aG{gyG=!28FSJIbkou4(X>N;qdt=!py%BC=qP)03 zdY2po?CcG{c>IiT3pZk<{hiSMn*XkkH9@XXrWssU_30Tj^LIIus!So(cXHEOV^-_C z{yO-RGnCdDIb&2GPVWMh2X0xb`@+59w~D)ynlD(F$oCga$5aLX4P7 zF`@=$hii8!v`oBYwAsCDj5W3-3^tW+_R4DYja5xF6RKzZH4Z8T$9f_6?|NB2Unrg6 z^rrei4SEwt8}|X198(Zi9=8mKAddrXMY2-Lp;Tuu;cR-BRx3wT>9Ix%g&>ASI~_$$ z*0cI9?|)I5$jC-&dr3tco-7A(V={-h)leSCCCdU_R;ACp(EjT;C)Pj40Vg<*(V-hJ z$IJ1|a}2t;EwuWD?zWJ$utHbqqc0RQ2P%2yKtazHBPg*@dzDhCUF%J?MP+V28O!?A zYIpaMX4n4=t6R84S+W(! zo9U7^yVlD>qOjfrSfMrWXUzwAG1QC+&XJgvsvS5%_ zEdq5lxCUuGIrFGW1bo0==TG6ZTAM?{e#OOMS}O(R+^|@sgd$W}+nUMwIG%K2yeb3W z%tTl6ts>S~=0<~b+nO^cXGDJ81|bml0-34Kpk)iVoVjJTP6MSc0c5Hffll563V7!2 z)!l-gR(`dbcs=zeQg)s0DL@3_H4#xDN5No_^DFC-b7Rjmy7EnoWH-|uh_p?vYXW$Y z0pv*+(Qaqte$7h~Hs^WW3g80OH|K1f6^>|+m&TQ7Tjm`Vwd`9FB5^MtiH2=er}z-r zr=3lS#5fH!;ILLRxc;SZRzVrxZf0G>90lG(xP1g|G~S zYTCW778=}AOgJzrO`#J{*2%pv86sEcN-2b2sxoL4x-AKNCDiye3T<*`-q=Dr_a~F~ zdF~`KBA|L^rrM7Bpq5M71S83>AgFiz5>R{CCuuqK*>NElAb}E?HmLL z7h35eUMNf9P1isvYPD)08A&Jrc@0d`(`{i?qylJc3nhmXLTfQXzd?^so&h7W!MHxS zTVe|z1;|FzrWL|i^|l=A1azp_ZTssRGqq~drO^Ah%?bboc$YdqAw&r1fx8CFSJ1k z5LrK5yL?sr3@;NQd`HA}@~|m{l4iu6%0lw-G{TG2D19eg1AeN7bT7D2p7|Eq80kbP z5b6S#9T=n&f?vyQvjPMV7!V~RKrBpwZGDq*Ee08qu|VGnY;Ng33*f%5*IIP*D_#&p zC9(B(#MwfT0p(ZE?pD!EmN~y-M89=zgg4?gb;ZfCIWuBI zRH)-uLUbmg#fXK%(V661DwM+6(V5B`V?>4*Meva?q|go56RR1MbX2V7#dUj%1H3Mx zI*HW`t9`d0OWcuuj*1`D-RiN5lWuvN_8Dqhioik*pPKY8Y8!X(8r{AMHPC+84=HR2 z`*1X9B65JDb1D%^p-z25lM6(VQ^$qZ4yfspOQ8m>g$A`F8Exm=(N+KjXUZK?A3ULLyQ5pdXr3K6g>sX<*hrdub=zjm%hwoOI z=eFv*Q^!_Y+Q!*RTGaye(laA>QCq!jT+=E_v;)7Dw2^4a$^#@atVc!I$^ymehS4Ra zbL$Ju)btjb=R%n)sY*HRcNF7?7?Ay~5aYK{woE9`HeV>lR%POq==!kf7gBF&8K-|cBZqu}>!G16wuRukg<@EZ@)WPoc!^o_h*6%r z_)YdHqJ{YmI_dmW^p%}5GV1rf(49U?dNU+=d117^W7|zDd!S{}lvvlksP%>yBz@=| z&m8)01bvN|k3E;k7i!x=szFG#Gb8$r#WwA!g`nAY+bJrk2KBuUJTlXs7wE3@S|iS} z3#IR$zr!!kePBoG+S%8dp6r}WYa>Qwp;2~1kETk|NUH{M0kwaDLs|ahPZ+t(W?5vl z82Z^lbFMd$04@a?!vgC$ADNEsn!BOM?KN9jv}L^x)UTS6WLY!+80860Ax2jSTWuk@ z*9gv54GZ1JuaLgW+{9I8_vwo2yBF6RA+y~w<~S;f`4#oWygatoDO;e7tVg<|_Po&8 zKB1ZsH(ppD%S=mmBaLt&wNr0uR47y9C&@S=fz}q(7fV|d7E9?l@e5?6!){Q9dMPYk z;};5k`Sk3>a~ zXxZm7FI2Zw`OF2h#jlyLt<&$J~KVl6XL-{)I`QiFML z4*Uc}iShCpC?vWFv9hR4)1}a;mKD12{n4A(E1FlzsB1v|bnRh*UhBoP9cyd7V7u$} z;_P@O!pTPTcD^DkVpx?yL!=-4wPz?*Er=#AaWq4C) zH}6%4U4PX#ks4~tv|r$UETle6OU1nm2}Oxv?}m^lP{~|pD(M;RG|i4z9Kefa!99NV zag5+4^~gwV(VNxkUdFYmA&p%%wm05I>cfq95s2eNw|XHx+m2PHz7v)1m&cNfm7ce% zUEI3RT{$^_jmD@N^qp&mudn^(krlZ-kENGj(luXS1KTluXQA~tu(bXfo!dgt(+FLM z1={`7GqsxIb7_QM&=U|erVI;(dD#fAH##|L7rF>JQYoj8;kU8AyNQ8jH8z6ULeN+2 zAPzNiz~?3&^3=pb_wW$hr8f537nyBYk*sDIX;=$sKh?@nQo9|qgKJg>|;GN>a;AQs~elat^krE1pXuP>qob{1+rAk~c zkJG<@wx~E$W;N=K8o~NP)wOdjBBP;TdG|HGHP1Z&i<`uEm!mGfloe3H zU$RZ;2-MPngJO9f#vyrHMiAZ{r-w^RD2_M?gwW5!XEstKcb3yZJaqaJr zI5;G@Ww;qAE=W!QmK+@4o8dVm_tfC%+f&Nu^s#uaTnakS_Q)?Z#((lmLts=jY!wGl z=y)B3yPX_GTjGfFnx@(cFSJCyw!-ESg8s~f$MH&tt;1lmk&tGR-V`%(i0p|0Pk6Sd zcB8yMu+T*UD84h5V0Y14HE2}C?jA8(1}}M*G16K9#06RaUZ|Cm%IlfFi`lu#+{$Uh z(pHF7y%6(XrMT5XNQ$r&9t%xm3ZkW5*jgwBZyj?FoWl|d)UoTZ^w4Nw>7CHGxz(fHxZBt69lD^MZW4M!*WCCG)ztbucqd@|&Y zWY%Yf7lQJBbH|?nmeMO&h`wTh&$Q67J&Q0uqdWH|5t`Ax?J0DSGk^1DCU&7aAF$Pk zBc{=;><7xNO)B4QXNQXHYkS`2Y0FZqG|S>2Q>c|y*a!>J-d~P>IB^$U}&0Pta__C`P!p`hB zwPb?&fgc;oTlgilLb6t=cG;)YvhXO{3d!8^Jo;=6q>_q&!9$vz|GsS$G6i0zos_3~KkJ#QE^ z;+_aEi=*LBDAd!l3-zmq1@o-slp7`7F)pR^!aGXIi2)c~jVpqTy6iS2@8B9dRFFcL zGK?}SK%tZxMx;x0nHombr}a=s%wWW7#dqG4P^Q_9J2Je_6yh|l&kawqp52_>Ni8FU z5#|aZnMd@UOdu*#rW(~QGtQ9tPAF+z=!3y$?0D*=kCaBbQ1XOpfP0KIwbd4hQMFSV zq0xaqlgu%g64XB(eA!T>o%;3)bQ7|P_0pm0jy-zgR_0;H_Obp`s~T1=wNnT0>Vxd3 zUJbEF`vY0nwQlMZ1o0$0y;oT7n(^w(nUh!ME~9vwSapVHqp?nJ)d<`+Y(B@q!{+lN zub?Qz`i?obl34^m&AlgtkR9-u(Qy2x|__iPdZRF76pr4S0 z-8VPH=#CXw#HpylOMC+nAtXA5bpQ)%tb<$N1G)0*MA0EKy46S_BnzEi8#9d()Yb@! zh709sN1mXVhO@%B_BydK4PhkHQ1>Vix+FGsa1<kd^5qZYDBF zp;KD83gHl~QBuGs&%VO34XQCKjBrXeB9zMLv;fWUvvf^2;+*DO4FHQ682_0Y-!vD}?7C{zuo-6;uLN^jN=Vy2vYVIaV zkHbQj&rkzd>R2gtWDD0J4hOK}jwovz-l|@MLTWk!RdFA;o{8yDTB`%O#8C0e+gXqn? zy3eJA23r|vdXT48h8T^eV#$Kf&x$h>C6qPDBTcltQRc?d1%S?`WJLBRQ&;pX6n+cq z&3u-djW5iWJMTy{wHFFc@S7MvQ>{>BWi;yP*{g^+jc17Nb5WG2;#f@@*KTh~(eQ~^ zTwP3sUfF9z!#i(%bMF<87ld7Tb;4S=#yX55twu1mMQc2{Qqh@vf~op{_9k5KGV_W< zbByMIS{A#pk*$vXv&My+R6W)=*(1dxaqKaQf0Tp9eZM_-PBPMjO$_7+L%u6C^9q@T zBKFEiwcl_45pt`kJ@(y4jk|lx*qRbTqLR=w7vy(m&RmySDC^5N-7-pX79U2;F_Vm@ zv;WXeM^NgzOl7%&Ln2#E&N)$nY&Fo+v6jC=<63V{u6M6e?v(*&)v(uSR_(+aE;LtG z9i+LD`yiCOTj+4!oXfR@DWk$~qH^*1nz<%2MdWih$iJg;AhNAmCIqeZ zru#=JqKoPawfrpfO!WO)XwRz()t2zwyQ)lGwyMlP;n{W;&0;cdmA&bi2;(l!(zUD_ zBO^H3C~ru7q2T#A&|g`mLW~~k+4$O?&DmX8Wffy6x$k@~p|-B9DHz zc9o&dZ-y#-R)jI@Mb$vA9@kDRt8&?(PdP&kD}*DO#dnbpdvPe2aG4L3<41g8#2i@Y zzI|PndBjL>3aJ#KinYGan*T;f5yfGPmyJ?y(A9Rn4p^Cq7J5I^cZI@|Z%U}Qji^x3 zg?S|kYF>%DYKyYh=$RtDRi+}n(b1fFMdJ|n>uq(Vu_C=$;hk$mqp7%Wbb%KNJ|l$g zg+4xefA_J>G>Mo)l<8%14YXS3R+BqNlu*7HNfE`aOGXn07^8XJHso0H8o?7rBWH&) z_h{{MDMDnjVXZU;T?%axXQ`c%`|5++LdGBQnR+X!Y(yV0#Z`~$&6oi~A4`#>H)0J^ zDQb(xR_zq!)d!7=`lk_7-!-;IEsqQqigPtlP+4a*|BP7gmB~hw5OQyYSOtub1u8{+ ztt>a19jaYiu9p1@-EAS2B81l9QkdbcL2Xg(NFrr7SV*lt@5*&xbXtOCDHr=ExHaON zx9T4TJkMg~K~OshH~sufrRY1=M>Yl1llsIHM#wr0VKpj3%#MXdU*G9jn$yfns$HXr z+0p!|>;y$$k=6>8M{Yzolzr!xR!R&jQfo~KHF-iRb>{+`hlK+w`#ywjw`RJW|<3iZ$JL}o^(7uUN-$VDUeI{pr=(`8;WFHW z{q8f=t|KxUPY{s%uZ1Z*d)SQ+;s% zG=3VR<7G2wVNcjhr8qXpIh|6t?PN1TD%wAcd1OB?W}J>xv?Ay{URp}{)aATQ&0HRK zpPvnU&w&&rN_7{QfLSHEruQ$=uZ55(dngybUI2O-D zb2DCx?y)@LM14FVO?~;tiTa1u+(wLeXBT+nsZ3;q+r6{2?;IMj{4MIc`Ldi9N{L$E zF)}Jsv-NndmM?U^-u#SOrSov#$-GcC;MM28-!IKi83x==#m9>hMyX8}(sx3XX+(WO z>JfPgJST|9cdN-o;2z=4QqQyo>O1@mHJXZ`c74RPi@HW?wGi{g-!Vptyhbal8uW}f zY|T2g#bpYq@8h*!ER_8Dg*hNOt=@lEzFUUpQKnY2kVi*ZUM-z8W=8bFZ!*>{lm2R5 z5M{IyXy>PuzzEr|9i!x?_E(bq+KouUBAvdH(}=r{a2hPMW%exHd=!Dzvruf_jyH-k z6MeUyeW#QoGsx)fAsi74>E zj5u?z` zDS0(<)$kGN&3Elzxk-u>hj9I=QUgWaB;DR*#O+PEX!`ahBl3oJ-F(DtN(+UZ&4^o= zj4r$MZrvH{{7fg}Mx1&ZarSD&Ik(!PvtG4Y_tO}0XNum`X|hVu$)wt%(@xEJ^7DDd z>s$@w`zeqczL5fH;L`{pom&`jPJ#ohZv!wQ!>Ew#&PL=ERVg|tQ0=lNt7Wox(xb2= z-bHy^&!CHKVnVWJ;e;($z(VBeB#6d&HF4Bc@-!oorztQeoR{vo5PNXFDO-Wcyt>Ow z#Qs&aOG7teM*#17HIWOk_9OIG4oad#=+=9UpCc-upmjv3Yt7Gy=m(=|%I7MN-l8(K zlB+&^_1qTamZ8=1xieCP1O0Pu5GWx(9wQu$L{I0kFzQe#gP9!fU_|Z(Aw@qJ5y@{v zEQHEbw7wC}+Y5bk*S_{@r()ut9<}R@G6f?J+Mm$r#Gg509}yHZg1QU!^1l8xx|f^x zN2GCAM7~B7f5SqAW6D)s@%cu?=c7?Lvfc=HdvpQEh!_zLE<_5HK;yD^c?2_ThtpjZ zA~fBI;Bdko9K;?znkyn6tyf@$g5QjYLZK~=+%+P`*GPd5 z*+0jm(Dw?7Ado}xlt%LbTDKs|5fs_j)qDQCWB*rt~8R?y)Ibu6q$xB8QR>@1oagZu0xnRVW zaymRx8ll2Jr4cIpbHpZVb0qtSu*!-^AN_Q)jYmru!7qm+p+Y}g7kQ6yy{>5Rg|Zvm6rzuGqo*@Rx)5f$t7HW*N&=FdDeV5kM zLb+!!BFntLBjbIc6Ano(P=@_N!~Bw{Ly1EBzECEA7W%@ev+IXyuKy!~zHW`4sWn24 zQ4$iT3FS`fg|=g%Ef#RsKvw-i;>qUI`LuNiO=e3Yd}lD8@Ew6Zg$~A(H}PmFbb9VA z&x=Co%~5D)Cednkr{*nudJ1LGocRDhHY0qi{3gC?h0-I;h+VYnV~1TR{U_Zr{0oin zD0KhuAv7iM3>1==aG}9`!~%u?vgW`1<_itx)xnLd>9uD>PX9vbb6zMd0j?qD&dcI; zz2ubaEQJRALOW%1GCIs5VNbL*EGbb|w2qY!dz)-(vePjiZTmw@(rxgzw{ge2?QLX> zf1w<|Tm_UZ{)P72Z~pzWbFgM=Z2+)cAFQpMD;NwEN@orZnzA4hJtRP6twAP;HOL6u zxO1n~k_RBWr@>$lGS3;YL;{3ujg$DNi9`fkh)$yCHuxmNve>#CGGB(_R8@L3xfeWA;xCFRoOCYT( zG4;x5WRUg`0XDGuhF!No9zGc44)qHJV35rX303DNlN}A25Ecj`A9j;|G}o}>_s@XW1Sm~_N>u;^Qw!*V z06kT!(}1A6?`M$r z`x&H-M#C5mnyojnNiJ-9}wF^HL#$JaZI5*fI;Sn>NUewuXfBMh(_yFpCe^xQllR1X~uk zH}Cej#!*kW{?eem%m7@#X)tX(2ymy~Mhm!`$RNkuAjjMw$6Q@_l;zkA@Z{dHb>x$9 zL~N!37d-mOg~5UYSgvj=)G@&bov(Uz9h6bb`66pvBXw>IooVdTn_NHTL*3YTtV3Nc zfAmo;mp}R#m&+ez$kFAGGV;Xbk7>37adk_fyjn=cAzfu8Gm;f$Oj>*Bu4V4B(vB&t z4zz_j+>r(~ZyAK*s?*)3H*Y+Q^7ysTMSZD=cr#JV2$#ZTeuXf|2+5EGzsRv!ykt`m zTxS!LQ99cey5MVeR2;Y#Ix(_hpp==+s6lItkT~Ai&=~V*nIv&`v!M}pvqJ3Cn42~c z3X$Z*Z*s(1=1LiLg*x*==%(+KqJ5YQo20O}VN?4p97A*fYBQ%ywTN>Yb&>Qs+OyG9 zW@8o$WhvC6Qil+OjK&9sl<|Ll4e*jyAg+7 z|6gn0lB-#B8#(V)Xa}9|$E5e7fgl?Yx(%Tluy@}d84+aOTlEXFuSZpJ&-qTinM@`b zT#2S{eW>Sb7l(ImgQ-up9?(9jOl-R;LvD`2$0oKsTR=m44*S!T7L#@8YZU~gLazvI zm;^h7YLO{wg%Ic1^2Uamh27E28>$8FTBJ^x7Mse2U3L`}w5(skfWGQ^T%4B8kQUlT z!%jkEmXI3CM<2K#@OiyD_YSBZMmIG={}>xhftoR^c3(#@T2Z%{-2d=wHONmqTN~d5 zvMz6l2CNW7`%yR6fuRU;VjY<1AW_zV%NVXh)*VoXykYAeNK8k&zxEPiFk*4z` z8j$5sIM>955>?6hT%7LD8q0aM*Tzob5_&K0us$RAy3kww`gMO6^IDp_dspaZKCk!g zSVu0e_om6(SHRv2mM6cY+Iz#^f44fg8gT-A-_w_`~W+>?PrZZESb)hdu85pv!UrR9*!Y97elwQo+DG(VlJXJCg7H`F4J8rK+EEV=%e<&5h#P#52&Bk=bTK@Re+pAs`rLq0UW0iaAK zdmyDZRdCw_?0y}Y%xovgY-P3s*`)%wFu7Ne4SJiV+Qp2y$3QMY_a@k*Ak&|FhVBj) zORya7=Hxi^G}w)-nLyald6Ba#l57)|iL0CjW86iS!v^CZ5^3W$XdR@^hWElcp0t>3 zjHb=3L^f@zcpKMe_1x;QLYao?14nM0ST{R+MR@;h;G0o8|kwyLy ztF|Yj<+2t{Mc2>|NLOOlEg*5&!a)p~Mdg8k+?TdZ+{lMY&6v?cG!@cE*8I5E4Sx*i z-a@@UT;kN=g-nZ`i7NQXJ$8xaT}3$|f-jKs%R~fJM;=v1V|k3e5IC^{HDr{ zXY@oBs$j(@A3Av38w4)d-*J?s1709xD zLU8ZrH%Y~%G}^Z!Ruc%8FTIHng+LAL{r*h`NYKxS!70pKU{~j(1cKEs5Ryj|^@HE} zaL~%AZ+^yaMjOmlSxeNVZpC<7tj1b|_g)5NThNBIh1ndWqYHJdXH7H~Rs!R*dSiz_Hja$NTbP$)H= z0kJXwaNSPJ6z=%3(&xZ>a3L^hvVx(_Z*fAXVa-#DA>p&0Av#Jg zPIf@Ar*DL61CUxPgg#5;@|37Sa1(({SqOp#<&lSub)iR6ppEciqJt1(AaKnEaszmv z4o66DJEM^TO@#tGTG)KN&*(=L$i0pNK{Z2Pn;D&R-BFWGccjS0h|!BH5a`>5KpKv1 zUo`9(ck-PDYL5~?V|*a@FAD^!b)f@Q!nbyEF$Jn<9}$#W%t5jf1p*zl5QwXVpdv$T zh%{UXWY|O`4Hp7wxDaOu5!7{|DfOhCpr#hWCMkp?fPQzON&qb!D}-=35o&Oi?YerH z&odmbgm6p~!tqY%Adw8wMUojHJ6YwM@C*&qu*Qgxkw9o*jS)e4U~3U+7Kn2R2-hHi zs)F`gu-QClg$l_FlLyU{Xh^;E-;GDvWMtceZhhapInqK6*EK}GQ3+A05^`x8Xo;id zrphDK!9zm?=`G~LFT_1S$ThnMm7WN@j1YF9L@moh!1;sv{>?M%Gd)A^3Sk`dCPqvM zqe-;gXc-9f;X)pZ7|6{QLY$F8Fh2;vI3QF}PqdHgh;0Y&RUk-j6Wc-kuRf#7%KoHe z5P}R5f;uaN6b0PFDYJ;E>Ixx20>_V1Q3z=k;J7Z?N<_IU1ewe^VG3o=5HKMI>d^g( z+yot8@rzX<)8kUtsGzEdCoo3Z4#Nx0{W?XhXJP?my@5<%zVHzjF_IwV+A6n(3S z+^It?lJu^x1}H>1Umo`llA}-`RDU9IiuxLn`5FgkhnmpP4mEyA+rqK^>9nE1g@y1z zF2uX6hc9Xn+c;u;LvDj4)in)GKR)}eC$wI29tPV$Zp{60LCl-uR_X`c5eW9|9~Xpu z1*t={ufUq8eFbSubQZ-G!h`-U!zCMR@s z5_WWT5_XNV=p;-u;*9>&DuH5=%ua#aLQjvW2l)y>9wKJj0s3hruW^XhKag6RU zgiui2h|6bC2;`)sSR@^(5C~j^K&6{#fVR<8X()R_BqvR@Rw7pfA2i2H_c;1D@<-J( zk+tX>a?(iki;xFm1nMC640NC0O(>8EV@8AlX;T?upio}8vkBSV`PM!??JQFgb?5~| zPQE~8mULV~aD(ICPv3_?9(WMQy(9u1&yYw2nub86O(j~W3(-Mcfb3FoMO|#$&03EM z?U3k*&dvP85NV*E0KJ3y%&vTI^rwZr?C5K_1h9IuAiEJ(z^x z`4m38738u+4Ro>?75HlfS|T-_=>ts!f9ybhRjhHp9dnS+22K-1Q{=#oHd;&MAqqsK zlL*w%BBGA@>1{A)$R0$ncBS3wi&h*8mpS%D@VucJR8kMJXci%tJ%*eH+ND$=muG<{ zg6oLb9?rjXH+l|-(_s65EzKz=xnHwS_NiF^+T=E*y z43PtX;3S@5ei9)9A`oV|P=3>x4#Hs?+_|((;-6aTOg;7R1aDp?n+dgj*flJ9gpKzLAWpEo^qNK+*2{<>E9O! zJ2QzUxQAn{gieIW3F-{Eh7e)25PA?RPV~{gAg8O2H*Y2)N@SxVEf0DKR`?IqNpsLM zpH}plXqdjC<-RM`8Al&32>n707*Fgg{7T$Z4&d?n`w6tyLh8 zwhrXs){L)YytNR>xb!BY99SN*)T^GRs)Y7remkaL!vjHSLfY>MU#k6s!!N4dfn7)G?VqgCVVC z9jD)_F{c}`jL>u!E6j3E#XuM3b$6jgR_BKJ!*|j)*^!$5<(_1L<1YjG$AG+P9(-N)wTusEfrmbpg^#YhS=2JlA$Yh zBV7~=Z33weMU+z|X4JKz6_limC}Dg)#TtY9#c>8E0Jf0+xae#nd z^P#Pwbc+$p9Q#^OE5P~LC>ZSE2Z5{bB1E^4xA2F;V-1jhA#;$S8R)0S+#b{u=3QuA z*CJr5d!7yY?DD`NUJA9(9qk@u<1XYba?dlH*Fw(O7|8h?pFZpPCYiNZ7dYCfo|~iT z8=qJ<*dp?5VT+_yjBLloy5+~D0tQY5lHt%Keh;(TgpaTtq54rqV;-nz-XKFB%_0o& zW**-_pcWBwU*ACP0w@H_rM?OO+Cbnj5yG*Bbzy*=P=O)=1Y1`igcAz+4fumfjn!@=JX@tYhD2ssT07M=zG3qb>b39SLZRMY@)qC}UM z7Tx--vnsB5VWmO@Qdpb9zT`F}+LzpRs8bd!1YvD*E2E(~USy{;p^dad{7TrRcJN@x z=CNq?1J$3bR2XnL(renlN~N~r6scZFI@pwurD2L9kF$QiB({+WR2)!{=9sz^Y3mTHL0yjO(pU=Nv!d zHJyQWDApo57V?vn>Hzv=6E+5r~?9LH-pW zl|Y2L2%*+Ou5AaJpp7NkPVXb+8obDEq3Z|oGlJ-5dF~MMv$jZNc_Jb;E6-IVW98{g z$m0(c4-eaRARG=z)XD>Zt&Sue7P{W$CMUL(Zd0XiPgRsx15iS#fnpp^z1tC}nguqK61ll$s*aV1Z6A*&B3=5WyNs!)RH~2{QB);bM zX~_2u&{@-#fH5Mc8`UP#iqpDf6mK>|I*5cD6?s2!Fzitz)k4*KmxzZ#S}PE;MDlJX zM$y5KGZ{4Bv{{8+1J(obHJF9Z zpUz=qcdZQ^tP8HJc8N7TEWUxK(NIBRP0!@&-rr3*UxyNMZg_^99&%iza!;V*h&f+7 zoOA2VHwUt{@+$+LsYA}k8>P3FZ-N2l;0gwrDco^)Mr#lJjFBP8&?qqu2N$XA>jO8Y zdEko779kAcxV_H3Yw1+j9nJBgwSPgL#`{6eaLeDZJR;U5koOs5)Yt}=p8UE%w|KuliUCO)w&gYq7YXX?KsK-QO`^8m-?fwsLSM^cPXzKdumrYmh$`H#!jO=Ya$<$M z|G*_yP5H7A?4zD=zIn~owczl}dM>#Q-}Rzi@^`oz);9|-{@lJK`MKcfdkXl&af_eN zcKHpO?M1gH;;akgb(y-`9X(qc$meL)UESc zSr?AqlAjLIYKfe5Cw{jfBRM0Pkec(wX_;bFE`l)7FYpRf4;tOdiCqokaoP<(XyDG9 z@fHh?e7tPi{Ws6<^E>RK{3geC7svw4i4PhrWWg?2)9kaWK#~^Mhtc+<5T4tzwOsu~ zU!TSGFMr3coRr?n&mGa9Q99Ay@uqq((8`*rwSjiZtlcCv+Kz|-N{#KlcajskBcKOT zad#vsuaObFo-t^Y~R1s8* zj*=GmCF@a;&_1EGsePEHY6H|X%`;ADMq9DbbXa3E`LVCX)^Jx%(Y&`*99vx5PfMB_ zA2d@<6M`5ur=L{J_R%KgI_-hm>5!L6+4<~Z+CYV4<@rta3nv(54~K)*&414R<&`QO zvyR^&YMk$z@fDY*Seu-fiN^V*SRzdJL}U#Zxn%T}K+m?Tx^(HLHI=>mr_{HgJzmsW zBDNt=|ANZ%J50AkxBl_(c4}+c*E_{8irG!H~p6M z`3h&Nj}i09a{!pRkG;h5*sVj`(kNN82sQ7#EPXw#Ww){o z9NQJqoIva3*e>K7WPfh0=>gPI1xWPu*)I7z_8GtVwLJDxARq8ROxLoWo>j8ha4FTw0bJe#Ou%k8bkVq=ts)KEV2W?GhDum7Z zHXVrHXY|+&!{jJKZbUwNFAW`}3w%*8Hg@`BJ{#r-wN$0AU%YGkOvE?G%9$1DpH1lT z54L&O=cCv_UTh#QHjrGxM^2kSb0unW7=3hab!3+t?|KGcKyY@s}9mSC4=T%vzfDn zn`OQw+*FMajTALQT~zCfMalj|>RI*Rf!4)d+V6S#Zk@FUuJh)4(Q^*Jps3)+pkC?` z1(Q2$*5&N1byFZ-nHp(BsiXYZEJ?!|#I{U&5b1M568Yu&gG~4*n)8pJoyRm6-z?Y) z#$zV*>x(e=Ii;8(S5>f0%#O*2WWm$jZVb7x5s`EhWRn+^5KoERki|C=L(RgcAfHjPwS?fLC7Ey+HYo~;<*#r{t*&}U!|IH|mJu${x7uJmRWUarp zVU!oG^`hGn!KkgihVfR2p(A|rAiSW;xLI0`3XGIgBxs~mU&BbLQ6a+SoyfW;QAxyY zSB6g~J`AI%yBLPSG~V=@aVEp$tn!E|2ps~g2Q`^;OUu57xmM%A)&`p6MGQP5dK4uZ zXj#H4P_WR0G}p2R6IGyjLv_e!?r|Mx0QDX%O62AZqNvNrRjd*)>sCQ9OcO;+{eouA zH!A|9h&=T}e6wl4wYelzWrUqiYhi>{Yxxz77>&1_A)oSAs#^=$(i7DjcXPiuzd`<$ zK&!sL+vEMF_jQyFWJebPV6`NIOr|lMyHozIqbJ7G zgHb|BLwTZc^LOYaebYSyVjaO;tD2!F^z3M*&K-tGwTKQ#JbJ-I%C^%GsiPi@sX7J{ zVQdq%mIh3Ww9Kv?cbGcW^9Y#N3?ZsAnC|`7tlilEXy!#U*-uq5n%~s0qpjfV7p)p5 zHZH?Nt%XUC%Pt>?WUbLr__2(JMPk3p4YD~=EpTk)* zD)MYY#NUpdMnfzo89tA!p^R$ZX%LnT0tYcFo;--o}K2h=7jV|(lk0a_0rdGvd^mAHu^I^VT4U| zpHZ1o@*TmLnrNMz^IOuUVh`_+b!$su^$`m+&WrjCQIgO4W6Q&7S2H9^XI*&USSwMJ zG4)Z_)dr4Hyy@e|Zw8_?bpz3svc7B9jAOf{bl((!TJQT+)+t6M!6+&z>jKpsB^;+P z3KQ_bWg?Bmfv8g593y=NZKs^iXEgm!JX??9nuw)G%{EK}y`&Ild8`C2&+&tMzc(|7 zzvYQfoy_hDw4W}I$-t>mPVOr#?_eW>B|~kGD%}~cs32@^T8%sC#YTLZs$Zh5>{p2cx^ABURp&vVL1sm$QdG$TgOz{_a^hIqTvp?>D17qMMs3+sD3U zi`ZET>}Rnt|8Fkt2--3c?S?Gf|( zUP#ju{9yleswJw#6A6Va9*@yFb-bvQM9UMOCEDXfMhR?s2%?HCEa4yl&p<-BQxW$9 zs?SrA2FBw>Ego+o=)-7yPLBw+j)*_RP?-bu@thVGI&z1{J`O~185z()Zu`-Yc8yU} zM2PC+o3|jE%u|mWItV}+8wuJFEq7KTCsVUGH`=g)YRUFp#PPB1ES>%0q&FVMGP9n6 z%E>nu+?4s1K)obl5At^)9X=ivt$M1wK>H@TiY@aNMf*GfK|}l)zIl7ZmQByca-KJ* z%4;*++SO+pF52u*q;6DSBXHW{8EPxhRE*zYZkQW$;toXo^@xt0 zS!?7WXAjzn!>BCel<|4Ck&A|N0yJ8-MUIF+qUxYIZw0)orT(@JyGutM9?1^sd9&B_0 z>kyGgVg<5B3!#}p=t!ZC$S)!U(5{XynBWiT5Y)`Qh(s)$v?Us=~#x#&rX^|W)y|E zC}efPX0vnL)t`a9W*renRb#uD@nuBYg;4s9_&?hiD7F_ER8_*l=FQSQr*vl~Wix|f z#2T`Cj@*cZAc7K^5LjC&wu}i*Uzv#b^Z4lposw?`8vR9{L4&_ze@4v;l6_O)4xlr0 zCLgB{O|){OT^<-E46(h;iT%hk%q~RNyz^>TeQzSFwZXtvs`bY z2ZdN3zlrv3zd%qMR60}#BCa^TiBKGUg$f8u;9T0s>Y!(yYA}A+B-WVx+*b}Fu{N?L zsC00mb4@3zJrPE1Be-2X*tAwomUoanb~h<5>%Pz4H?j5TD^UW=^PH(&N>pQ-_FR8^ zV9p1cIScmC7TJ)uy{sIEiFwT#GBN8QKlju&UyxCeTRF2W*7^%#8y4m#zqvG9+j`MP zZr8rE=be3?OXM51U_G#wpg2?;nr%i*;)p6V~{~(TSM^@xAau!^u4(v1VhRo|D1j^B6s-WFbz?o4Jvmi(^NB*wGe0erDCVQ4)IUsv zc4DN3Fs~C0{EqUoAg?XeyMpZ0`(`h(bbh624n3^qv_OtUE_X0{pSKOP|k_xcOA$V zkZbo=-U*e_kgIThCb62Wrdk`yvv$;)ZNKU>ABXGP3wls*LZw$GcV^%otq_JE$T zT`8A_=FHX(oVAOH94|zWWvJvctOrBuWQ*`k2zWy!HhtAaBZhinn~2u(8T*XC;|$p# zxC}H-zUkX;d}V{`Gy0Q#-S>-Df6-nqI`{p`xxYM%(Ii?czZoMq5UR{t|9rA6r) zP4tmO`i#mz zre%yurJdGyi$LDK9~+?EJZ0=2Zo~sKBC>$ctQF7PQ1>9?d=PSz-h;}`uS_tFxFwN> zK|`m?XlSe%on%~KA=zD~M`teqotY5`7BEMQ3Pz0qR%;((sg;W9hgxdZKoi7xB$HU{LfaWoQo> zl8w=(gz4B&+tDwHtPP2bTSUJ@pCuYQOYn{~)Mu8!nqgFGN1w3`Y!Rp;)mk^L8Yf9< zGFhsZX2po12Pe2U*t@fW-)4aWC6Ljl!PIGEbio>Rsy}Neq2SHcWH5~p17k?pG6-+f z#i#~_E{N-ZYQY?IgRr3m-k83SHXW2+b-u_LO2oi|7OCxSl2r-QbNX88lT0ezQN1!} zs-Dxk+z^>tj4>n;pPiDwJ21O;Cr~Qj*fnSF5;GD8VYNsItgNgV@-+wY%0DR0$`86Z z3s`#fkYLqXz2s9W`o&GaQO^mMBlZN65vYCOhEcyPa2|a}d~@II2{%q#+l?9z#%YZ$ zjMG-nR$g>(BCJjQ4rG)pp?1tcPb{m|F+l=VJJ@x$&%xTjr{kV#(YxTH;aZtagJv}| zSvQeT!S??CBA-2hyhZq(o*gheUGV;}1b*}Q`crv<-nv9RFIro7lvg`07cS;C5ST3` z3s!-gaC$iB^G69AZ|-cZ5NbwLE-c8!XBOoIzsZ%#@-(*B)X4|U8*i$YC~eT9a&ggt zUeX*4MEG?}Wm$FQ(#z!Hv({L4XD~Ed-e6G`&BiUkHD@qlE=hA{{1D4ga3l6ua6t z=8JlJ->mmV{tRMNzvGCJj-1cj&>Fwn5S2s+stOT$LSF%)7;AkzvzEpWhEHv7Fve+m zAE#oF5P)e;vrdQ!2bzf1&X6JUL67PO)2f6q5jPu{Gqnv0q37+Ab;U*tT4O^-v(M7m zc01~==y@0^<5|ZTpy28Qn@El{Y>x3eut{<>g;?uA_a<^`O3&QeR2JG7^es>7v_trci+**JmZ`D$My*tgelTBVifQ&D{E8$}Z}u!d zEIa4es#VmYb33XqcAO)tm`$m&WPyw+b)^$oc{b~!Lk#Vq9Vp)9)W=u2ELZ{-9_@

fqhE~X|=b885cy=fI=Dqp5jss3bpLHju#aE(T@~km}n4$G9dSXI#uXoj3%X$6WmbbZ zg|%)ZD@M&)1wpWz1`O>M^D_~jwdZ$5`=7PpgXYlQsPZUqTX_!WRx|3tc9WLqK8Uj* zklR}?#I|oX@l6O-@~QHhstbgF3+m}U9MO2R&~_8)s&&)cwUKU3T9=IqQ9f(){avlU zd^5^BGuqDnR6VQa{KT`4&260MYtHgSWncFVDOu znodL}84{h9CAeZ8rAMuA?&w08<%vudWEQ21(s@PU&tRV7TIn#Hv3L8BY1P(4A38I8 zFHP(@tmni$V;d&sE@w|5Z|(PIJI<*OS`Wf{5W;#8!g|m*S?h&a4jI{T^@I7szCJiAa2&37E?X=8V)k%`T$%KItpHIa=I^-McO*K4`P9%XvdO7* zA=HdJY~MIy@GBcuG3>XNi)l&Cevq%mc++++wmlIqWc#RWo)3S?_PIthEvqt+Ug^GcK)&5}K@xpbv75X~8y$0*Pe@Rd<; zNrw_f#omw7?b0)~^nuLElm!E1{p`=tpdF&M`RpsQQ5o&k`BVbStIu)VP+k=oN(+yn z+CrM7e$yUOFUA(Mjb4`b;1$@^vK`pJ7DEUYFA z2JN(vgJa5SSqwqZ$6_GcTKIDfZw z;`9F8*zq`*!eZ_7Z0pMPK5uf)Z)rh3wp(Y5jnY@oS&n)N!78oQF<(if-sLxGzvg_2 z{`6;2g8$BWKxi#ogI0c=SBAUC(ptY}!70m+bB5N{t%4yx)wv_XniW?!ZYwd=XPor& znT?o!=N1=3qlXn>T-aZn;Kb_EyRL&`9HK=%Peg-hAh6pH+>Bt?e$68P^KXCtkH7rg i{_}5t{;U7t-~Z45`}_a?^WXm0|M>s&1!>A5AOZkTc?NI* literal 0 HcmV?d00001 diff --git a/src/hos_libvariant/src/.hg/store/phaseroots b/config.properties similarity index 100% rename from src/hos_libvariant/src/.hg/store/phaseroots rename to config.properties diff --git a/src/hos_core_types/launch/setup_core_types.launch b/src/hos_core_types/launch/setup_core_types.launch index 9060b42f..2230092a 100644 --- a/src/hos_core_types/launch/setup_core_types.launch +++ b/src/hos_core_types/launch/setup_core_types.launch @@ -13,4 +13,8 @@ + + + + \ No newline at end of file diff --git a/src/hos_core_types/schema/core/configs/rulepackage.json b/src/hos_core_types/schema/core/configs/rulepackage.json new file mode 100644 index 00000000..3373fb3b --- /dev/null +++ b/src/hos_core_types/schema/core/configs/rulepackage.json @@ -0,0 +1,152 @@ +{ + "$schema": "http://json-schema.org/draft-04/schema#", + "title": "Rule Package", + "description": "", + "version": "1.0.0", + "type": "object", + "properties": { + "language": { + "description": "", + "type": "string" + }, + "globalcontext": { + "description": "", + "type": "object" + }, + "rules": { + "description": "", + "type": "object", + "minProperties": 1, + "patternProperties": { + ".*": { + "type": "object", + "properties": { + "body": { + "type": "string" + }, + "conditions": { + "type": "array", + "minItems": 1, + "items": { + "type": "object", + "anyOf": [ + { "$ref": "#/definitions/DeviceMsgCondition" }, + { "$ref": "#/definitions/DeviceStatusCondition" }, + { "$ref": "#/definitions/TimeCondition" }, + { "$ref": "#/definitions/SystemCondition" } + ] + } + } + }, + "additionalProperties": false, + "required": [ "name", "conditions", "body" ] + } + } + } + }, + "definitions": { + "DeviceMsgCondition": { + "type": "object", + "properties": { + "type": { + "description": "", + "type": "string", + "pattern": "devicemsg" + }, + "deviceid": { + "description": "", + "type": "string" + }, + "msgtype": { + "description": "", + "type": "string", + "enum": ["status", "command"] + }, + "msgpointer": { + "description": "", + "type": "string" + }, + "msgvalue": { + "description": "" + } + }, + "additionalProperties": false, + "anyOf": [ + { "required": [ "type", "deviceid" ] }, + { "required": [ "type", "deviceid", "msgtype", "msgvalue" ] }, + { "required": [ "type", "deviceid", "msgtype", "msgpointer" ] } + ] + }, + "DeviceStatusCondition": { + "type": "object", + "properties": { + "type": { + "description": "", + "type": "string", + "pattern": "devicestatus" + }, + "deviceid": { + "description": "", + "type": "string" + }, + "statuspointer": { + "description": "", + "type": "string" + }, + "fromvalue": { + "description": "" + }, + "tovalue": { + "description": "" + } + }, + "additionalProperties": false, + "anyOf": [ + {"required": [ "type", "deviceid" ] } + ] + }, + "TimeCondition": { + "type": "object", + "properties": { + "type": { + "description": "", + "type": "string", + "pattern": "time" + }, + "cron": { + "description": "", + "type": "string" + }, + "time": { + "description": "" + } + }, + "additionalProperties": false, + "anyOf": [ + { "required": [ "type", "cron" ] }, + { "required": [ "type", "time" ] } + ] + }, + "SystemCondition": { + "type": "object", + "properties": { + "type": { + "description": "", + "type": "string", + "pattern": "systemevent" + }, + "event": { + "description": "", + "type": "string", + "enum": [ "startup", "shutdown" ] + } + }, + "additionalProperties": false, + "anyOf": [ + { "required": [ "type", "event" ] } + ] + } + }, + "additionalProperties": false, + "required": [ "language", "rules" ] +} \ No newline at end of file diff --git a/src/hos_cosgi_core/CMakeLists.txt b/src/hos_cosgi_common/CMakeLists.txt similarity index 91% rename from src/hos_cosgi_core/CMakeLists.txt rename to src/hos_cosgi_common/CMakeLists.txt index cdb3bbf3..d8575a02 100644 --- a/src/hos_cosgi_core/CMakeLists.txt +++ b/src/hos_cosgi_common/CMakeLists.txt @@ -1,5 +1,5 @@ cmake_minimum_required(VERSION 2.8.3) -project(hos_cosgi_core) +project(hos_cosgi_common) ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) @@ -79,7 +79,7 @@ find_package(catkin REQUIRED COMPONENTS ## DEPENDS: system dependencies of this project that dependent projects also need catkin_package( INCLUDE_DIRS include -# LIBRARIES hos_cosgi_core +# LIBRARIES hos_cosgi_common CATKIN_DEPENDS hos_celix # DEPENDS system_lib ) @@ -96,19 +96,19 @@ include_directories( ) ## Declare a cpp library -# add_library(hos_cosgi_core -# src/${PROJECT_NAME}/hos_cosgi_core.cpp +# add_library(hos_cosgi_common +# src/${PROJECT_NAME}/hos_cosgi_common.cpp # ) ## Declare a cpp executable -# add_executable(hos_cosgi_core_node src/hos_cosgi_core_node.cpp) +# add_executable(hos_cosgi_common_node src/hos_cosgi_common_node.cpp) ## Add cmake target dependencies of the executable/library ## as an example, message headers may need to be generated before nodes -# add_dependencies(hos_cosgi_core_node hos_cosgi_core_generate_messages_cpp) +# add_dependencies(hos_cosgi_common_node hos_cosgi_common_generate_messages_cpp) ## Specify libraries to link a library or executable target against -# target_link_libraries(hos_cosgi_core_node +# target_link_libraries(hos_cosgi_common_node # ${catkin_LIBRARIES} # ) @@ -127,7 +127,7 @@ include_directories( # ) ## Mark executables and/or libraries for installation -# install(TARGETS hos_cosgi_core hos_cosgi_core_node +# install(TARGETS hos_cosgi_common hos_cosgi_common_node # ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} # LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} # RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} @@ -152,7 +152,7 @@ install(DIRECTORY include/${PROJECT_NAME}/ ############# ## Add gtest based cpp test target and link libraries -# catkin_add_gtest(${PROJECT_NAME}-test test/test_hos_cosgi_core.cpp) +# catkin_add_gtest(${PROJECT_NAME}-test test/test_hos_cosgi_common.cpp) # if(TARGET ${PROJECT_NAME}-test) # target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) # endif() diff --git a/src/hos_cosgi_core/include/hos_cosgi_core/cosgi_core.h b/src/hos_cosgi_common/include/hos_cosgi_common/cosgi_common.h similarity index 71% rename from src/hos_cosgi_core/include/hos_cosgi_core/cosgi_core.h rename to src/hos_cosgi_common/include/hos_cosgi_common/cosgi_common.h index 5309e260..591bfb53 100644 --- a/src/hos_cosgi_core/include/hos_cosgi_core/cosgi_core.h +++ b/src/hos_cosgi_common/include/hos_cosgi_common/cosgi_common.h @@ -1,12 +1,12 @@ /* - * cosgi_core.h + * cosgi_common.h * * Created on: 19.04.2015 * Author: matzman */ -#ifndef INCLUDE_HOS_COSGI_CORE_COSGI_CORE_H_ -#define INCLUDE_HOS_COSGI_CORE_COSGI_CORE_H_ +#ifndef INCLUDE_HOS_COSGI_COMMON_COSGI_CORE_H_ +#define INCLUDE_HOS_COSGI_COMMON_COSGI_CORE_H_ namespace hos { @@ -29,4 +29,4 @@ public: } // namespace cosgi } // namespace hos -#endif /* INCLUDE_HOS_COSGI_CORE_COSGI_CORE_H_ */ +#endif /* INCLUDE_HOS_COSGI_COMMON_COSGI_CORE_H_ */ diff --git a/src/hos_cosgi_core/package.xml b/src/hos_cosgi_common/package.xml similarity index 91% rename from src/hos_cosgi_core/package.xml rename to src/hos_cosgi_common/package.xml index 41f67a15..ff9931f9 100644 --- a/src/hos_cosgi_core/package.xml +++ b/src/hos_cosgi_common/package.xml @@ -1,8 +1,8 @@ - hos_cosgi_core + hos_cosgi_common 0.0.0 - The hos_cosgi_core package + The hos_cosgi_common package @@ -19,7 +19,7 @@ - + diff --git a/src/hos_cosgi_devicerepository/CMakeLists.txt b/src/hos_cosgi_devicerepository/CMakeLists.txt index 6192ad19..e82d5d3f 100644 --- a/src/hos_cosgi_devicerepository/CMakeLists.txt +++ b/src/hos_cosgi_devicerepository/CMakeLists.txt @@ -8,7 +8,7 @@ find_package(catkin REQUIRED COMPONENTS hos_celix hos_core_msgs hos_cosgi_launcher - hos_cosgi_core + hos_cosgi_common hos_libvariant hos_cpp_common roscpp @@ -91,7 +91,7 @@ find_package(Boost REQUIRED) catkin_package( INCLUDE_DIRS include # LIBRARIES hos_cosgi_devicerepository - CATKIN_DEPENDS hos_celix hos_core_msgs hos_cosgi_launcher roscpp hos_cosgi_core hos_libvariant hos_cpp_common + CATKIN_DEPENDS hos_celix hos_core_msgs hos_cosgi_launcher roscpp hos_cosgi_common hos_libvariant hos_cpp_common # DEPENDS system_lib ) @@ -122,7 +122,6 @@ bundle(hos_cosgi_devicerepository SOURCES ${PROJECT_SOURCE_DIR}/src/bundle_activator ${PROJECT_SOURCE_DIR}/src/hos_devicerepository_service_impl - ${PROJECT_SOURCE_DIR}/src/HosSchemaLoader ) target_link_libraries(hos_cosgi_devicerepository ${catkin_LIBRARIES} diff --git a/src/hos_cosgi_devicerepository/include/hos_cosgi_devicerepository/hos_devicerepository_service.h b/src/hos_cosgi_devicerepository/include/hos_cosgi_devicerepository/hos_devicerepository_service.h index e64b7c77..de2606a7 100644 --- a/src/hos_cosgi_devicerepository/include/hos_cosgi_devicerepository/hos_devicerepository_service.h +++ b/src/hos_cosgi_devicerepository/include/hos_cosgi_devicerepository/hos_devicerepository_service.h @@ -2,64 +2,87 @@ #define _HOS_DEVICEREPOSITORY_SERVICE_H_ -#include +#include #include #include #include +#include + +// Forward declarations namespace libvariant { -class Variant; + class Variant; +} +namespace hos { + namespace cosgi { + namespace devicerepository { + class Device; + } + } } + +// Service Namespace namespace hos { namespace cosgi { +namespace devicerepository { -class DeviceEvent; -class GenericDevice; - +/** + * Base class for device events + **/ class DeviceEvent { public: enum class EventType : int { DEVICE_ADDED = 1, DEVICE_REMOVED = 2, STATUS_UPDATED = 3, COMMAND_RECEIVED = 4 }; - DeviceEvent(GenericDevice* device, EventType type) : device(device), eventType(type) {} - GenericDevice* device; - EventType eventType; - template T* as() { return (T*)this; } - template const T* as() const { return (T*)this; } + const EventType eventType; + Device* const device; + DeviceEvent(Device* device, EventType type) : device(device), eventType(type) {} }; - + /** + * Device added + **/ class DeviceAddedEvent : public DeviceEvent { public: - DeviceAddedEvent(GenericDevice* device) - : DeviceEvent(device, DeviceEvent::EventType::DEVICE_ADDED) {} + DeviceAddedEvent(Device* device) : DeviceEvent(device, DeviceEvent::EventType::DEVICE_ADDED) {} }; +/** + * Device removed + **/ class DeviceRemovedEvent : public DeviceEvent { public: - DeviceRemovedEvent(GenericDevice* device) - : DeviceEvent(device, DeviceEvent::EventType::DEVICE_REMOVED) {} + DeviceRemovedEvent(Device* device) : DeviceEvent(device, DeviceEvent::EventType::DEVICE_REMOVED) {} }; -class DeviceStatusEvent : public DeviceEvent { +/** + * Device status message received + **/ +class DeviceStatusMsgEvent : public DeviceEvent { public: - DeviceStatusEvent(GenericDevice* device, const libvariant::Variant& statusMsg) + DeviceStatusMsgEvent(Device* device, const libvariant::Variant& statusMsg) : DeviceEvent(device, DeviceEvent::EventType::STATUS_UPDATED), statusMsg(statusMsg) {} const libvariant::Variant& statusMsg; }; -class DeviceCmdEvent : public DeviceEvent { +/** + * Device command message received + **/ +class DeviceCmdMsgEvent : public DeviceEvent { public: - DeviceCmdEvent(GenericDevice* device, const libvariant::Variant& cmdMsg) + DeviceCmdMsgEvent(Device* device, const libvariant::Variant& cmdMsg) : DeviceEvent(device, DeviceEvent::EventType::COMMAND_RECEIVED), cmdMsg(cmdMsg) {} const libvariant::Variant& cmdMsg; }; -class GenericDevice : public COSGI_Object_Interface, public common::IObservable { +/** + * Public interface of an device object + **/ +class Device : public COSGI_Object_Interface, public common::IObservable { public: virtual const std::string& getDeviceID() = 0; virtual const std::string& getDeviceType() = 0; @@ -71,18 +94,26 @@ public: }; + +/** + * Public Interface of the device repository service + **/ class HOSDeviceRepositoryService : public COSGI_Service_Interface, public common::IObservable { public: static constexpr const char* SERVICE_NAME = "hos_devicerepository_service"; static constexpr int SERVICE_VERSION_MAJOR = 1; static constexpr int SERVICE_VERSION_MINOR = 0; - virtual GenericDevice* getDevice(std::string device_id) = 0; - virtual std::vector& getDevices(std::vector& devices) = 0; + virtual std::shared_ptr getDevice(std::string device_id) = 0; + virtual size_t getDevices(std::vector>& devices) = 0; }; + +} // namespace devicerepository } // namespace cosgi } // namespace hos + + #endif /* _HOS_DEVICEREPOSITORY_SERVICE_H_ */ diff --git a/src/hos_cosgi_devicerepository/launch/cosgi_devicerepository.launch b/src/hos_cosgi_devicerepository/launch/cosgi_devicerepository.launch index ec7ad252..65876dda 100644 --- a/src/hos_cosgi_devicerepository/launch/cosgi_devicerepository.launch +++ b/src/hos_cosgi_devicerepository/launch/cosgi_devicerepository.launch @@ -1,5 +1,5 @@ - + \ No newline at end of file diff --git a/src/hos_cosgi_devicerepository/package.xml b/src/hos_cosgi_devicerepository/package.xml index 89eb22e8..465d5939 100644 --- a/src/hos_cosgi_devicerepository/package.xml +++ b/src/hos_cosgi_devicerepository/package.xml @@ -44,14 +44,14 @@ hos_core_msgs hos_cosgi_launcher roscpp - hos_cosgi_core + hos_cosgi_common hos_libvariant hos_cpp_common hos_celix hos_core_msgs hos_cosgi_launcher roscpp - hos_cosgi_core + hos_cosgi_common hos_libvariant hos_cpp_common diff --git a/src/hos_cosgi_devicerepository/src/bundle_activator.cpp b/src/hos_cosgi_devicerepository/src/bundle_activator.cpp index a4f67a00..9812e3e3 100644 --- a/src/hos_cosgi_devicerepository/src/bundle_activator.cpp +++ b/src/hos_cosgi_devicerepository/src/bundle_activator.cpp @@ -14,65 +14,18 @@ extern "C" { #include #include "hos_devicerepository_service_impl.h" -using namespace hos::cosgi; - - #include #include +#include -class Test01 : public hos::common::IObserver { -public: - void notificationReceived(hos::common::IObservable& o, const DeviceEvent* e) { - switch (e->eventType) { - case DeviceEvent::EventType::DEVICE_ADDED: - { - std::cout << "DeviceEvent: Device added: " << e->device->getDeviceID() << std::endl; - } - break; - case DeviceEvent::EventType::DEVICE_REMOVED: - { - std::cout << "DeviceEvent: Device removed: " << e->device->getDeviceID() << std::endl; - } - break; - case DeviceEvent::EventType::STATUS_UPDATED: - { - auto event = e->as(); - std::cout << "DeviceEvent: Device Updated: " << e->device->getDeviceID() << std::endl; - std::cout << "message: "; - libvariant::SerializeJSON(stdout, event->statusMsg, true); - std::cout << std::endl; - std::cout << "current: "; - libvariant::SerializeJSON(stdout, event->device->getCurrentState(), true); - std::cout << std::endl; - std::cout << "last: "; - libvariant::SerializeJSON(stdout, event->device->getLastState(), true); - std::cout << std::endl; - } - break; - case DeviceEvent::EventType::COMMAND_RECEIVED: - { - auto event = e->as(); - std::cout << "DeviceEvent: Device Command: " << e->device->getDeviceID() << std::endl; - std::cout << "message: "; - libvariant::SerializeJSON(stdout, event->statusMsg, true); - std::cout << std::endl; - } - break; - default: - { - std::cout << "DeviceEvent: Unknown event." << std::endl; - } - break; - }; - } - -} test01; +using namespace hos::cosgi; +using namespace hos::cosgi::devicerepository; struct UserData { apr_pool_t* memoryPool = nullptr; - hos::cosgi::HOSDeviceRepositoryServiceImpl* serviceImpl = nullptr; + std::unique_ptr serviceImpl; service_registration_pt serviceReg = nullptr; }; @@ -100,33 +53,29 @@ celix_status_t bundleActivator_create(bundle_context_pt context, void **userData } celix_status_t bundleActivator_start(void * userData, bundle_context_pt context) { - celix_status_t status = CELIX_START_ERROR; + celix_status_t status = CELIX_SUCCESS; if (userData != nullptr) { UserData* myUserData = (UserData*)userData; + // Create hos-devicerepository-service + if (myUserData->serviceReg != nullptr) { + serviceRegistration_unregister(myUserData->serviceReg); + } + myUserData->serviceImpl.reset(new HOSDeviceRepositoryServiceImpl()); // Get HOS Core Service service_reference_pt ref = nullptr; - bundleContext_getServiceReference(context, (char*)HOSCoreService::SERVICE_NAME, &ref); - hos::cosgi::HOSCoreService* coreService = nullptr; + bundleContext_getServiceReference(context, (char*)core::HOSCoreService::SERVICE_NAME, &ref); + core::HOSCoreService* coreService = nullptr; bundleContext_getService(context, ref, (void**)&coreService); if (coreService == nullptr) { - ROS_ERROR("DeviceRepositoryService: Could not retrieve HOSCoreService."); + ROS_ERROR("DeviceRepositoryService: Could not retrieve HOSCoreService. Are you using hos_cosgi_launcher?"); } else { - int major = 0, minor = 0; - coreService->getServiceVersion(major, minor); - ROS_INFO_STREAM("DeviceRepositoryService: Found HOSCoreService Version " << major << "." << minor); - // Create and register hos-devicerepository-service - if (myUserData->serviceReg != nullptr) { - serviceRegistration_unregister(myUserData->serviceReg); - } - if (myUserData->serviceImpl != nullptr) { - delete myUserData->serviceImpl; - } - myUserData->serviceImpl = new hos::cosgi::HOSDeviceRepositoryServiceImpl(*coreService); - myUserData->serviceImpl->addObserver(test01); - bundleContext_registerService(context, (char*)hos::cosgi::HOSDeviceRepositoryService::SERVICE_NAME, myUserData->serviceImpl, nullptr, &myUserData->serviceReg); - status = CELIX_SUCCESS; - ROS_INFO("DeviceRepositoryService: Bundle successfully started"); + myUserData->serviceImpl->setCoreService(coreService); } + // Register hos-devicerepository-service + if (myUserData->serviceImpl->isInitialized()) { + bundleContext_registerService(context, (char*)HOSDeviceRepositoryService::SERVICE_NAME, myUserData->serviceImpl.get(), nullptr, &myUserData->serviceReg); + } + ROS_INFO("DeviceRepositoryService: Bundle successfully started"); } else { ROS_ERROR("DeviceRepositoryService: Could not start bundle, user data struct is null"); } @@ -138,16 +87,11 @@ celix_status_t bundleActivator_stop(void * userData, bundle_context_pt context) if (userData != nullptr) { UserData* myUserData = (UserData*)userData; if (myUserData->serviceReg != nullptr) { - if (myUserData->serviceImpl->getRefCount() > 0) { - frameworkLogger_log(OSGI_FRAMEWORK_LOG_ERROR, 0, 0, 0, (char*)"RefCount > 0"); - return status; - } serviceRegistration_unregister(myUserData->serviceReg); myUserData->serviceReg = nullptr; } - if (myUserData->serviceImpl != nullptr) { - delete myUserData->serviceImpl; - myUserData->serviceImpl = nullptr; + if (myUserData->serviceImpl) { + myUserData->serviceImpl.reset(); } ROS_INFO("DeviceRepositoryService: Bundle successfully stopped"); status = CELIX_SUCCESS; diff --git a/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.cpp b/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.cpp index 8a3efc2d..77fd2c48 100644 --- a/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.cpp +++ b/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.cpp @@ -7,44 +7,57 @@ #include "hos_devicerepository_service_impl.h" #include -#include "HosSchemaLoader.h" #include #include #include #include + + namespace hos { namespace cosgi { +namespace devicerepository { -GenericDeviceImpl::GenericDeviceImpl(std::string deviceID, std::string type, std::string statusTopic, std::string cmdTopic) +DeviceImpl::DeviceImpl(std::string deviceID, std::string type, std::string statusTopic, std::string cmdTopic) : deviceID(deviceID), deviceType(type), statusTopic(statusTopic), cmdTopic(cmdTopic) { std::cout << "GenericDeviceImpl(" << deviceID << ", " << type << ", " << statusTopic << ", " << cmdTopic << ")" << std::endl; } -void GenericDeviceImpl::handleStatusMsg(libvariant::Variant& msg) { +void DeviceImpl::handleStatusMsg(Variant& msg) { + std::lock_guard lock(objMutex); lastState = currentState.Copy(); currentState.Merge(msg); - DeviceStatusEvent event(this, msg); + DeviceStatusMsgEvent event(this, msg); notifyObservers(&event); } -void GenericDeviceImpl::handleCommandMsg(libvariant::Variant& msg) { - DeviceCmdEvent event(this, msg); +void DeviceImpl::handleCommandMsg(Variant& msg) { + std::lock_guard lock(objMutex); + DeviceCmdMsgEvent event(this, msg); notifyObservers(&event); } +void HOSDeviceRepositoryServiceImpl::setCoreService(core::HOSCoreService* coreService) { + if (coreService && !this->coreService) { + this->coreService = coreService; + this->nodehandle = coreService->getPrivateNodeHandle(); + int major = 0, minor = 0; + coreService->getServiceVersion(major, minor); + ROS_INFO_STREAM("DeviceRepositoryService: Found HOSCoreService Version " << major << "." << minor); + init(); + } +} -HOSDeviceRepositoryServiceImpl::HOSDeviceRepositoryServiceImpl(HOSCoreService& coreService) - : coreService(coreService), nodehandle(coreService.getPrivateNodeHandle()) { - nodehandle.getParam("device_repository_prefix", deviceRepositoryPrefix); - nodehandle.getParam("hos_status_topic", hosStatusTopic); +void HOSDeviceRepositoryServiceImpl::init() { + nodehandle->getParam("device_repository_prefix", deviceRepositoryPrefix); + nodehandle->getParam("hos_status_topic", hosStatusTopic); XmlRpc::XmlRpcValue rawValue; - nodehandle.getParam(deviceRepositoryPrefix, rawValue); + nodehandle->getParam(deviceRepositoryPrefix, rawValue); if (rawValue.getType() == XmlRpc::XmlRpcValue::TypeStruct) { - for (auto iter = rawValue.begin(); iter != rawValue.end(); iter++) { - std::string devname = (*iter).first; - XmlRpc::XmlRpcValue devRaw = (*iter).second; + for (auto dev : rawValue) { + std::string devname = dev.first; + XmlRpc::XmlRpcValue devRaw = dev.second; try { addDevice(devname, devRaw); ROS_INFO_STREAM("Created device " << devname << "."); @@ -53,47 +66,22 @@ HOSDeviceRepositoryServiceImpl::HOSDeviceRepositoryServiceImpl(HOSCoreService& c } } } - hosStatusSub = nodehandle.subscribe(hosStatusTopic, 1000, &HOSDeviceRepositoryServiceImpl::hosStatusMsgCallback, this); - schemaLoader = new HosSchemaLoader(); + hosStatusSub = nodehandle->subscribe(hosStatusTopic, 1000, &HOSDeviceRepositoryServiceImpl::hosStatusMsgCallback, this); + schemaLoader.reset(new libvariant::HosSchemaLoader()); + initialized = true; + ROS_INFO_STREAM("DeviceRepositoryService: Initialized and Ready."); } void HOSDeviceRepositoryServiceImpl::addDevice(std::string name) { std::stringstream ss; ss << deviceRepositoryPrefix << "/" << name; XmlRpc::XmlRpcValue rawValue; - nodehandle.getParam(ss.str(), rawValue); + nodehandle->getParam(ss.str(), rawValue); addDevice(name, rawValue); } void HOSDeviceRepositoryServiceImpl::addDevice(std::string name, XmlRpc::XmlRpcValue& rawValue) { - GenericDevice* dev = _createDevice(name, rawValue); - if (dev != nullptr) { - devices.insert({name, dev}); - // cmd topic - auto& entry = subscripedTopics[dev->getCmdTopic()]; - std::cout << "subCount1: " << entry.first << "." << std::endl; - if (entry.first <= 0) { - entry.second = nodehandle.subscribe(dev->getCmdTopic(), 1000, &HOSDeviceRepositoryServiceImpl::cmdMsgCallback, this); - std::cout << "subscriped to " << dev->getCmdTopic() << "." << std::endl; - } - entry.first= entry.first + 1; - subscripedTopics[dev->getCmdTopic()] = entry; - // status topic - entry = subscripedTopics[dev->getStatusTopic()]; - std::cout << "subCount2: " << entry.first << "." << std::endl; - if (entry.first <= 0) { - entry.second = nodehandle.subscribe(dev->getStatusTopic(), 1000, &HOSDeviceRepositoryServiceImpl::statusMsgCallback, this); - std::cout << "subscriped to " << dev->getStatusTopic() << "." << std::endl; - } - entry.first= entry.first + 1; - subscripedTopics[dev->getStatusTopic()] = entry; - DeviceAddedEvent event(dev); - notifyObservers(&event); - } -} - - -GenericDevice* HOSDeviceRepositoryServiceImpl::_createDevice(std::string name, XmlRpc::XmlRpcValue& rawValue) { + std::lock_guard lock(serviceMutex); std::string type, statusTopic, cmdTopic; XmlRpc::XmlRpcValue& typeRaw = rawValue["type"]; if (typeRaw.getType() != XmlRpc::XmlRpcValue::TypeString) { @@ -110,31 +98,56 @@ GenericDevice* HOSDeviceRepositoryServiceImpl::_createDevice(std::string name, X throw std::runtime_error("cmdTopic is not a string."); } cmdTopic = static_cast(cmdTopicRaw); - return new GenericDeviceImpl(name, type, statusTopic, cmdTopic); + std::shared_ptr dev = std::make_shared(name, type, statusTopic, cmdTopic); + devices.insert({name, dev}); + // cmd topic + auto& entry = subscripedTopics[dev->getCmdTopic()]; + std::cout << "subCount1: " << entry.first << "." << std::endl; + if (entry.first <= 0) { + entry.second = nodehandle->subscribe(dev->getCmdTopic(), 1000, &HOSDeviceRepositoryServiceImpl::cmdMsgCallback, this); + std::cout << "subscriped to " << dev->getCmdTopic() << "." << std::endl; + } + entry.first= entry.first + 1; + subscripedTopics[dev->getCmdTopic()] = entry; + // status topic + entry = subscripedTopics[dev->getStatusTopic()]; + std::cout << "subCount2: " << entry.first << "." << std::endl; + if (entry.first <= 0) { + entry.second = nodehandle->subscribe(dev->getStatusTopic(), 1000, &HOSDeviceRepositoryServiceImpl::statusMsgCallback, this); + std::cout << "subscriped to " << dev->getStatusTopic() << "." << std::endl; + } + entry.first= entry.first + 1; + subscripedTopics[dev->getStatusTopic()] = entry; + // send device added event + DeviceAddedEvent event(dev.get()); + notifyObservers(&event); } void HOSDeviceRepositoryServiceImpl::removeDevice(std::string name) { - GenericDevice* dev = devices[name]; - if (dev != nullptr) { - DeviceRemovedEvent event(dev); + std::lock_guard lock(serviceMutex); + auto& dev = devices[name]; + if (dev) { + DeviceRemovedEvent event(dev.get()); notifyObservers(&event); dev->notifyObservers(&event); devices.erase(name); - delete dev; } } -GenericDevice* HOSDeviceRepositoryServiceImpl::getDevice(std::string device_id) { - return this->devices[device_id]; +std::shared_ptr HOSDeviceRepositoryServiceImpl::getDevice(std::string device_id) { + return std::static_pointer_cast(this->devices[device_id]); } -std::vector& HOSDeviceRepositoryServiceImpl::getDevices(std::vector& devices) { +size_t HOSDeviceRepositoryServiceImpl::getDevices(std::vector>& devices) { + std::lock_guard lock(serviceMutex); + size_t retval = 0; for (auto item : this->devices) { - devices.push_back(item.second); + devices.push_back(std::static_pointer_cast(item.second)); + retval++; } - return devices; + return retval; } @@ -143,21 +156,18 @@ void HOSDeviceRepositoryServiceImpl::getServiceVersion(int& major, int& minor) { minor = SERVICE_VERSION_MINOR; } -int HOSDeviceRepositoryServiceImpl::getRefCount() { - return 0; -} - void HOSDeviceRepositoryServiceImpl::statusMsgCallback(const hos_core_msgs::DeviceStatusUpdate::ConstPtr& msg) { + std::lock_guard lock(serviceMutex); std::cout << "HOSDeviceRepositoryServiceImpl::statusMsgCallback" << std::endl; - libvariant::Variant s = schemaLoader->GetSchema(std::string("hos:schema://").append(msg->device_type).append("/status")); - libvariant::Variant m = libvariant::Deserialize(msg->msg_body, libvariant::SERIALIZE_JSON); - libvariant::SchemaResult sr = libvariant::SchemaValidate(s, m, schemaLoader); + Variant s = schemaLoader->GetSchema(std::string("hos:schema://").append(msg->device_type).append("/status")); + Variant m = Deserialize(msg->msg_body, SERIALIZE_JSON); + SchemaResult sr = SchemaValidate(s, m, schemaLoader.get()); if (!sr.Error()) { - GenericDevice* dev = devices[msg->device_id]; - if (dev != nullptr) { - ((GenericDeviceImpl*)dev)->handleStatusMsg(m); - DeviceStatusEvent event(dev, m); + std::shared_ptr dev = std::static_pointer_cast(devices[msg->device_id]); + if (dev) { + dev->handleStatusMsg(m); + DeviceStatusMsgEvent event(dev.get(), m); notifyObservers(&event); } } else { @@ -166,15 +176,16 @@ void HOSDeviceRepositoryServiceImpl::statusMsgCallback(const hos_core_msgs::Devi } void HOSDeviceRepositoryServiceImpl::cmdMsgCallback(const hos_core_msgs::DeviceCommand::ConstPtr& msg) { + std::lock_guard lock(serviceMutex); std::cout << "HOSDeviceRepositoryServiceImpl::cmdMsgCallback" << std::endl; - libvariant::Variant s = schemaLoader->GetSchema(std::string("hos:schema://").append(msg->device_type).append("/command")); - libvariant::Variant m = libvariant::Deserialize(msg->msg_body, libvariant::SERIALIZE_JSON); - libvariant::SchemaResult sr = libvariant::SchemaValidate(s, m, schemaLoader); + Variant s = schemaLoader->GetSchema(std::string("hos:schema://").append(msg->device_type).append("/command")); + Variant m = Deserialize(msg->msg_body, SERIALIZE_JSON); + SchemaResult sr = SchemaValidate(s, m, schemaLoader.get()); if (!sr.Error()) { - GenericDevice* dev = devices[msg->device_id]; + std::shared_ptr dev = std::static_pointer_cast(devices[msg->device_id]); if (dev != nullptr) { - ((GenericDeviceImpl*)dev)->handleCommandMsg(m); - DeviceCmdEvent event(dev, m); + dev->handleCommandMsg(m); + DeviceCmdMsgEvent event(dev.get(), m); notifyObservers(&event); } } else { @@ -183,10 +194,11 @@ void HOSDeviceRepositoryServiceImpl::cmdMsgCallback(const hos_core_msgs::DeviceC } void HOSDeviceRepositoryServiceImpl::hosStatusMsgCallback(const hos_core_msgs::HosStatusUpdate::ConstPtr& msg) { + std::lock_guard lock(serviceMutex); std::cout << "HOSDeviceRepositoryServiceImpl::hosStatusMsgCallback" << std::endl; - libvariant::Variant s = schemaLoader->GetSchema(std::string("hos:schema://core/msgs/hosstatusupdate")); - libvariant::Variant m = libvariant::Deserialize(msg->msg_body, libvariant::SERIALIZE_JSON); - libvariant::SchemaResult sr = libvariant::SchemaValidate(s, m, schemaLoader); + Variant s = schemaLoader->GetSchema(std::string("hos:schema://core/msgs/hosstatusupdate")); + Variant m = Deserialize(msg->msg_body, SERIALIZE_JSON); + SchemaResult sr = SchemaValidate(s, m, schemaLoader.get()); if (!sr.Error()) { if (m.Contains("devices")) { auto d = m["devices"]; @@ -217,6 +229,7 @@ void HOSDeviceRepositoryServiceImpl::hosStatusMsgCallback(const hos_core_msgs::H } +} // namespace devicerepository } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.h b/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.h index c69940ce..10c59325 100644 --- a/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.h +++ b/src/hos_cosgi_devicerepository/src/hos_devicerepository_service_impl.h @@ -10,94 +10,136 @@ #include #include +#include #include #include #include +#include #include #include #include #include - -namespace XmlRpc { -class XmlRpcValue; -} - #include + +using namespace libvariant; + + + +// Forward declarations +namespace XmlRpc { + class XmlRpcValue; +} namespace hos { + namespace cosgi { + namespace core { + class HOSCoreService; + } + } +} -class HosSchemaLoader; +// Service Namespace +namespace hos { namespace cosgi { +namespace devicerepository { -class HOSCoreService; -class GenericDeviceImpl : public GenericDevice { + +/** + * Device implementation + **/ +class DeviceImpl : public Device { OBSERVABLE_IMPL(DeviceEvent) private: + std::mutex objMutex; std::string deviceID; std::string deviceType; std::string statusTopic; std::string cmdTopic; - libvariant::Variant currentState; - libvariant::Variant lastState; + Variant currentState; + Variant lastState; public: - GenericDeviceImpl(std::string deviceID, std::string deviceType, std::string statusTopic, std::string cmdTopic); + DeviceImpl(std::string deviceID, std::string deviceType, std::string statusTopic, std::string cmdTopic); + + /* Public Service Implementations */ virtual const std::string& getDeviceID() { return deviceID; } virtual const std::string& getDeviceType() { return deviceType; } virtual const std::string& getCmdTopic() { return cmdTopic; } virtual const std::string& getStatusTopic() { return statusTopic; } - virtual const libvariant::Variant& getCurrentState() { return currentState; } - virtual const libvariant::Variant& getLastState() { return lastState; } + virtual const Variant& getCurrentState() { return currentState; } + virtual const Variant& getLastState() { return lastState; } - void handleStatusMsg(libvariant::Variant& msg); - void handleCommandMsg(libvariant::Variant& msg); + /* Internal Stuff */ + + void handleStatusMsg(Variant& msg); + void handleCommandMsg(Variant& msg); }; + + +/** + * Implementation of device repository service + **/ class HOSDeviceRepositoryServiceImpl : public HOSDeviceRepositoryService { OBSERVABLE_IMPL(DeviceEvent) private: - typedef std::map devicesMap_t; + typedef std::map> devicesMap_t; + typedef std::map> subscripedTopicMap_t; - ros::NodeHandle& nodehandle; - HOSCoreService& coreService; - devicesMap_t devices; - std::map> subscripedTopics; + std::recursive_mutex serviceMutex; + + ros::NodeHandle* nodehandle = nullptr; + core::HOSCoreService* coreService = nullptr; std::string deviceRepositoryPrefix = "/hos/devices/repository"; std::string hosStatusTopic = "/hos/status/updates"; + devicesMap_t devices; + subscripedTopicMap_t subscripedTopics; ros::Subscriber hosStatusSub; - HosSchemaLoader* schemaLoader = nullptr; + std::unique_ptr schemaLoader; + + bool initialized = false; + + void init(); void addDevice(std::string name); void addDevice(std::string name, XmlRpc::XmlRpcValue& rawValue); - GenericDevice* _createDevice(std::string name, XmlRpc::XmlRpcValue& rawValue); void removeDevice(std::string name); public: - HOSDeviceRepositoryServiceImpl(HOSCoreService& coreService); + /* Initialization */ - virtual GenericDevice* getDevice(std::string device_id); - virtual std::vector& getDevices(std::vector& devices); + void setCoreService(core::HOSCoreService* coreService); + + /* Public Service Implementations */ + + virtual std::shared_ptr getDevice(std::string device_id); + virtual size_t getDevices(std::vector>& devices); virtual const char* getServiceName() { return SERVICE_NAME; } virtual void getServiceVersion(int& major, int& minor); - virtual int getRefCount(); + /* Message Callbacks */ void statusMsgCallback(const hos_core_msgs::DeviceStatusUpdate::ConstPtr& msg); void cmdMsgCallback(const hos_core_msgs::DeviceCommand::ConstPtr& msg); void hosStatusMsgCallback(const hos_core_msgs::HosStatusUpdate::ConstPtr& msg); + + /* Internal Stuff */ + + bool isInitialized() { return initialized; } }; +} // namespace devicerepository } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_launcher/CMakeLists.txt b/src/hos_cosgi_launcher/CMakeLists.txt index c0d1c304..e7a809e9 100644 --- a/src/hos_cosgi_launcher/CMakeLists.txt +++ b/src/hos_cosgi_launcher/CMakeLists.txt @@ -7,7 +7,8 @@ project(hos_cosgi_launcher) find_package(catkin REQUIRED COMPONENTS hos_celix roscpp - hos_cosgi_core + hos_cosgi_common + hos_cpp_common ) ## System dependencies are found with CMake's conventions @@ -83,7 +84,7 @@ find_package(APR REQUIRED) catkin_package( INCLUDE_DIRS include # LIBRARIES hos_cosgi_launcher - CATKIN_DEPENDS hos_celix hos_cosgi_core + CATKIN_DEPENDS hos_celix hos_cosgi_common # DEPENDS system_lib ) diff --git a/src/hos_cosgi_launcher/include/hos_cosgi_launcher/hos_core_service.h b/src/hos_cosgi_launcher/include/hos_cosgi_launcher/hos_core_service.h index 56718f6e..6b4a5edd 100644 --- a/src/hos_cosgi_launcher/include/hos_cosgi_launcher/hos_core_service.h +++ b/src/hos_cosgi_launcher/include/hos_cosgi_launcher/hos_core_service.h @@ -2,29 +2,52 @@ #define SRC_HOS_CORE_SERVICE_H_ -#include +#include +#include +// Forward declarations namespace ros { class NodeHandle; } + + +// Service Namespace namespace hos { -namespace cosgi{ +namespace cosgi { +namespace core { -class HOSCoreService : public COSGI_Service_Interface { + +class CoreEvent { +public: + enum class EventType : int { STARTUP_FINISHED = 1 }; + const EventType eventType; + CoreEvent(EventType type) : eventType(type) {} +}; + +class StartupFinishedEvent : public CoreEvent { +public: + StartupFinishedEvent() : CoreEvent(EventType::STARTUP_FINISHED) {} +}; + + + + +class HOSCoreService : public COSGI_Service_Interface, public common::IObservable { public: static constexpr const char* SERVICE_NAME = "hos_core_service"; static constexpr int SERVICE_VERSION_MAJOR = 1; static constexpr int SERVICE_VERSION_MINOR = 0; - virtual ros::NodeHandle& getPublicNodeHandle() = 0; - virtual ros::NodeHandle& getPrivateNodeHandle() = 0; + virtual ros::NodeHandle* getPublicNodeHandle() = 0; + virtual ros::NodeHandle* getPrivateNodeHandle() = 0; virtual void requestShutdown() = 0; }; +} // namespace core } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_launcher/package.xml b/src/hos_cosgi_launcher/package.xml index 5d74924f..0937dcbf 100644 --- a/src/hos_cosgi_launcher/package.xml +++ b/src/hos_cosgi_launcher/package.xml @@ -42,10 +42,12 @@ catkin hos_celix roscpp - hos_cosgi_core + hos_cosgi_common + hos_cpp_common hos_celix roscpp - hos_cosgi_core + hos_cosgi_common + hos_cpp_common diff --git a/src/hos_cosgi_launcher/src/hos_core_service_impl.cpp b/src/hos_cosgi_launcher/src/hos_core_service_impl.cpp index 63bbaf3f..b5d81990 100644 --- a/src/hos_cosgi_launcher/src/hos_core_service_impl.cpp +++ b/src/hos_cosgi_launcher/src/hos_core_service_impl.cpp @@ -10,17 +10,18 @@ namespace hos { namespace cosgi{ +namespace core { -HOSCoreServiceImpl::HOSCoreServiceImpl(ros::NodeHandle& publicNodeHandle, ros::NodeHandle& privateNodeHandle) +HOSCoreServiceImpl::HOSCoreServiceImpl(ros::NodeHandle* publicNodeHandle, ros::NodeHandle* privateNodeHandle) : publicNodeHandle(publicNodeHandle), privateNodeHandle(privateNodeHandle) {} -ros::NodeHandle& HOSCoreServiceImpl::getPublicNodeHandle() { +ros::NodeHandle* HOSCoreServiceImpl::getPublicNodeHandle() { return publicNodeHandle; } -ros::NodeHandle& HOSCoreServiceImpl::getPrivateNodeHandle() { +ros::NodeHandle* HOSCoreServiceImpl::getPrivateNodeHandle() { return privateNodeHandle; } @@ -36,6 +37,7 @@ void HOSCoreServiceImpl::getServiceVersion(int& major, int& minor) { } +} // namespace core } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_launcher/src/hos_core_service_impl.h b/src/hos_cosgi_launcher/src/hos_core_service_impl.h index 60c0da68..304d5eee 100644 --- a/src/hos_cosgi_launcher/src/hos_core_service_impl.h +++ b/src/hos_cosgi_launcher/src/hos_core_service_impl.h @@ -9,26 +9,33 @@ #define SRC_HOS_CORE_SERVICE_IMPL_H_ #include +#include +// Service Namespace namespace hos { namespace cosgi{ +namespace core { + + class HOSCoreServiceImpl : public HOSCoreService { +OBSERVABLE_IMPL(CoreEvent) private: - ros::NodeHandle& publicNodeHandle; - ros::NodeHandle& privateNodeHandle; + ros::NodeHandle* publicNodeHandle; + ros::NodeHandle* privateNodeHandle; public: - HOSCoreServiceImpl(ros::NodeHandle& publicNodeHandle, ros::NodeHandle& privateNodeHandle); + HOSCoreServiceImpl(ros::NodeHandle* publicNodeHandle, ros::NodeHandle* privateNodeHandle); - virtual ros::NodeHandle& getPublicNodeHandle(); - virtual ros::NodeHandle& getPrivateNodeHandle(); + virtual ros::NodeHandle* getPublicNodeHandle(); + virtual ros::NodeHandle* getPrivateNodeHandle(); virtual void requestShutdown(); virtual const char* getServiceName() { return SERVICE_NAME; } virtual void getServiceVersion(int& major, int& minor); }; +} // namespace core } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_launcher/src/hos_cosgi_launcher.cpp b/src/hos_cosgi_launcher/src/hos_cosgi_launcher.cpp index 22153be6..32040d34 100644 --- a/src/hos_cosgi_launcher/src/hos_cosgi_launcher.cpp +++ b/src/hos_cosgi_launcher/src/hos_cosgi_launcher.cpp @@ -18,7 +18,7 @@ extern "C" { // celix does not provide C++ ready headers #include -using namespace hos::cosgi; +using namespace hos::cosgi::core; std::function signalHandler; @@ -101,8 +101,9 @@ int main(int argc, char **argv) { // Create bundle context bundle_context_pt context = nullptr; bundle_getContext(fwBundle, &context); + // Create and register hos-core-service - HOSCoreServiceImpl hosCoreService(rosPublicNodeHandle, rosPrivateNodeHandle); + HOSCoreServiceImpl hosCoreService(&rosPublicNodeHandle, &rosPrivateNodeHandle); service_registration_pt reg = nullptr; bundleContext_registerService(context, (char*)HOSCoreService::SERVICE_NAME, static_cast(&hosCoreService), nullptr, ®); ROS_INFO("HOS core service registered"); @@ -177,6 +178,12 @@ int main(int argc, char **argv) { throw std::runtime_error((boost::format("Could not create temporary APR memory pool.") % cstatus).str()); } + // Send startup finished event + { + StartupFinishedEvent event; + hosCoreService.notifyObservers(&event); + } + // main loop ROS_INFO("Entering main loop"); signalHandler = [&](int signum) { diff --git a/src/hos_cosgi_rulesengine/CMakeLists.txt b/src/hos_cosgi_rulesengine/CMakeLists.txt index 190d4029..587d3ede 100644 --- a/src/hos_cosgi_rulesengine/CMakeLists.txt +++ b/src/hos_cosgi_rulesengine/CMakeLists.txt @@ -6,7 +6,7 @@ project(hos_cosgi_rulesengine) ## is used, also find other catkin packages find_package(catkin REQUIRED COMPONENTS hos_celix - hos_cosgi_core + hos_cosgi_common hos_cosgi_devicerepository hos_cosgi_launcher hos_cpp_common @@ -90,7 +90,7 @@ find_package(Boost REQUIRED) catkin_package( INCLUDE_DIRS include # LIBRARIES hos_cosgi_rulesengine - CATKIN_DEPENDS hos_celix hos_cosgi_core hos_cosgi_devicerepository hos_cosgi_launcher hos_cpp_common hos_libvariant roscpp + CATKIN_DEPENDS hos_celix hos_cosgi_common hos_cosgi_devicerepository hos_cosgi_launcher hos_cpp_common hos_libvariant roscpp # DEPENDS system_lib ) @@ -121,6 +121,10 @@ bundle(hos_cosgi_rulesengine SOURCES ${PROJECT_SOURCE_DIR}/src/bundle_activator ${PROJECT_SOURCE_DIR}/src/hos_rulesengine_service_impl + ${PROJECT_SOURCE_DIR}/src/rulesengine/RulePackage + ${PROJECT_SOURCE_DIR}/src/rulesengine/GlobalContext + ${PROJECT_SOURCE_DIR}/src/rulesengine/Rule + ${PROJECT_SOURCE_DIR}/src/rulesengine/RuleCondition ) target_link_libraries(hos_cosgi_rulesengine ${catkin_LIBRARIES} diff --git a/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesengine_service.h b/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesengine_service.h index 2b00cfba..113b2394 100644 --- a/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesengine_service.h +++ b/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesengine_service.h @@ -9,12 +9,13 @@ #define INCLUDE_HOS_COSGI_RULESENGINE_HOS_RULESENGINE_SERVICE_H_ -#include +#include #include namespace hos { namespace cosgi { +namespace rulesengine { class RulesEngineEvent; @@ -28,6 +29,7 @@ public: }; +} // namespace rulesengine } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesexecution_service.h b/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesexecution_service.h new file mode 100644 index 00000000..7d581d72 --- /dev/null +++ b/src/hos_cosgi_rulesengine/include/hos_cosgi_rulesengine/hos_rulesexecution_service.h @@ -0,0 +1,62 @@ +/* + * hos_rulesexecution_service.h + * + * Created on: 01.05.2015 + * Author: matzman + */ + +#ifndef INCLUDE_HOS_COSGI_RULESENGINE_HOS_RULESEXECUTION_SERVICE_H_ +#define INCLUDE_HOS_COSGI_RULESENGINE_HOS_RULESEXECUTION_SERVICE_H_ + + +#include +#include + + +// Forward declarations +namespace XmlRpc { +class XmlRpcValue; +} +namespace hos { +namespace cosgi { +namespace rulesengine { +class RulePackage; +} +} +} + + +namespace hos { +namespace cosgi { +namespace rulesexecution { + + +class GlobalExecutionContext : public COSGI_Object_Interface { + +}; + + +class RuleBody : public COSGI_Object_Interface { + +}; + + +class HOSRulesExecutionService : public COSGI_Service_Interface { +public: + static constexpr const char* SERVICE_NAME = "hos_rulesexecution_service"; + + virtual std::string getLanguage() = 0; + + virtual std::shared_ptr createGlobalExecutionContext(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw) = 0; + virtual std::shared_ptr createRuleBody(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw) = 0; +}; + + +} // namespace rulesengine +} // namespace cosgi +} // namespace hos + + + + +#endif /* INCLUDE_HOS_COSGI_RULESENGINE_HOS_RULESEXECUTION_SERVICE_H_ */ diff --git a/src/hos_cosgi_rulesengine/launch/cosgi_rulesengine.launch b/src/hos_cosgi_rulesengine/launch/cosgi_rulesengine.launch index d1962053..ff908682 100644 --- a/src/hos_cosgi_rulesengine/launch/cosgi_rulesengine.launch +++ b/src/hos_cosgi_rulesengine/launch/cosgi_rulesengine.launch @@ -1,4 +1,7 @@ + + + diff --git a/src/hos_cosgi_rulesengine/notes/notes.txt b/src/hos_cosgi_rulesengine/notes/notes.txt new file mode 100644 index 00000000..6af2acb3 --- /dev/null +++ b/src/hos_cosgi_rulesengine/notes/notes.txt @@ -0,0 +1,35 @@ +{ +"language" : "python", +"globalcontext" : "?", +"rules" : [ + { + "name" : "rule0", + "conditions" : [ + { + "type" : "devicestatus", + "deviceid" : "", + "jsonpath" : "", + "from": , + "to": , + }, + { + "type" : "devicemsg", + "deviceid" : "", + "jsonpath" : "", + "msgtype": "status", + "msgvalue": , + }, + { + "type" : "time", + "cron" : "", + "timepoint" : "" + }, + { + "type": "system", + "event": "startup" + } + ], + "body" : "" + } +] +} \ No newline at end of file diff --git a/src/hos_cosgi_rulesengine/notes/rulesengine.ecore b/src/hos_cosgi_rulesengine/notes/rulesengine.ecore index a4f5d749..46e240eb 100644 --- a/src/hos_cosgi_rulesengine/notes/rulesengine.ecore +++ b/src/hos_cosgi_rulesengine/notes/rulesengine.ecore @@ -1,34 +1,34 @@ - - + + + + + + - + - - - - + - - + + + + - - - - - - + + + + + - - - - + diff --git a/src/hos_cosgi_rulesengine/notes/rulesengine.ecore_diagram b/src/hos_cosgi_rulesengine/notes/rulesengine.ecore_diagram index fca9eeae..0354d7b6 100644 --- a/src/hos_cosgi_rulesengine/notes/rulesengine.ecore_diagram +++ b/src/hos_cosgi_rulesengine/notes/rulesengine.ecore_diagram @@ -1,294 +1,462 @@ - - - - - - - + + + + - - - - + + - - - - - - - + + + + - - - - - + + + + + - - - - - - - - - - - + + + - - - + + + - - + + - - - - - + + + + + - - - - - - - + + + - - - + + + - - + + - - - - - + + + + + - - - + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - + - - - - - - + + + + + - - - - - - - - + + + - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + - - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - - - - - + + + + + + - - - + + + + - - - + + + + - - + + - - - - - + + + - - - + + - - - - - - + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - + + + - - + + - - - + + + - - - + + + - - + + - - - + + + - - - + + + - - + + - - - + + + - - - + + + - - + + - - - + + + + - - + + + + + + + + + + + + + + + + + + + + + + + + + - + - - + + - + + - - + + - + + - - - - - - - - - - - - - + + + - - + + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/hos_cosgi_rulesengine/package.xml b/src/hos_cosgi_rulesengine/package.xml index 2e3a4f2a..121c4c2d 100644 --- a/src/hos_cosgi_rulesengine/package.xml +++ b/src/hos_cosgi_rulesengine/package.xml @@ -41,14 +41,14 @@ catkin hos_celix - hos_cosgi_core + hos_cosgi_common hos_cosgi_devicerepository hos_cosgi_launcher hos_cpp_common hos_libvariant roscpp hos_celix - hos_cosgi_core + hos_cosgi_common hos_cosgi_devicerepository hos_cosgi_launcher hos_cpp_common diff --git a/src/hos_cosgi_rulesengine/src/bundle_activator.cpp b/src/hos_cosgi_rulesengine/src/bundle_activator.cpp index a8dec4c6..1b4b6860 100644 --- a/src/hos_cosgi_rulesengine/src/bundle_activator.cpp +++ b/src/hos_cosgi_rulesengine/src/bundle_activator.cpp @@ -15,21 +15,58 @@ extern "C" { #include "hos_celix/bundle_activator.h" #include "hos_celix/bundle_context.h" + #include "hos_celix/service_listener.h" + #include "hos_celix/service_reference.h" + #include "hos_celix/constants.h" } #include #include "hos_rulesengine_service_impl.h" +#include +#include + +using namespace hos::cosgi::rulesengine; +using namespace hos::cosgi::rulesexecution; +using namespace hos::cosgi::devicerepository; +using namespace hos::cosgi::core; using namespace hos::cosgi; - - struct UserData { apr_pool_t* memoryPool = nullptr; - hos::cosgi::HOSRulesEngineServiceImpl* serviceImpl = nullptr; + std::unique_ptr serviceImpl = nullptr; service_registration_pt serviceReg = nullptr; + serviceListener myServiceListener; + bundle_context_pt bundleContext; }; + +celix_status_t cb_serviceChanged(void* listener, service_event_pt event) { + UserData* myUserData = (UserData*) ((serviceListener*)listener)->handle; + if (event->type == OSGI_FRAMEWORK_SERVICE_EVENT_REGISTERED) { + char* serviceName = nullptr; + bool checkReg = false; + serviceReference_getProperty(event->reference, (char*)OSGI_FRAMEWORK_OBJECTCLASS, &serviceName); + if (serviceName && std::strcmp(serviceName, HOSDeviceRepositoryService::SERVICE_NAME) == 0) { + HOSDeviceRepositoryService *service = nullptr; + bundleContext_getService(myUserData->bundleContext, event->reference, (void**)&service); + myUserData->serviceImpl->setRepoService(service); + checkReg = true; + } else if (serviceName && std::strcmp(serviceName, HOSRulesExecutionService::SERVICE_NAME) == 0) { + HOSRulesExecutionService *service = nullptr; + bundleContext_getService(myUserData->bundleContext, event->reference, (void**)&service); + myUserData->serviceImpl->addExecutionBackend(service); + checkReg = true; + } + // Register hos-devicerepository-service + if (checkReg && !myUserData->serviceReg && myUserData->serviceImpl->isInitialized()) { + bundleContext_registerService(myUserData->bundleContext, (char*)HOSRulesEngineServiceImpl::SERVICE_NAME, myUserData->serviceImpl.get(), nullptr, &myUserData->serviceReg); + } + } else if (event->type == OSGI_FRAMEWORK_SERVICE_EVENT_UNREGISTERING) { + } + return CELIX_SUCCESS; +} + celix_status_t bundleActivator_create(bundle_context_pt context, void **userData) { celix_status_t status = CELIX_START_ERROR; apr_pool_t* memoryPool = nullptr; @@ -42,6 +79,7 @@ celix_status_t bundleActivator_create(bundle_context_pt context, void **userData UserData* myUserData = (UserData*)apr_palloc(memoryPool, sizeof(UserData)); if (myUserData != nullptr) { myUserData->memoryPool = memoryPool; + myUserData->bundleContext = context; *userData = (void*)myUserData; status = CELIX_SUCCESS; ROS_INFO("RulesEngineService: Bundle successfully created"); @@ -54,44 +92,45 @@ celix_status_t bundleActivator_create(bundle_context_pt context, void **userData } celix_status_t bundleActivator_start(void * userData, bundle_context_pt context) { - celix_status_t status = CELIX_START_ERROR; + celix_status_t status = CELIX_SUCCESS; if (userData != nullptr) { UserData* myUserData = (UserData*)userData; + // Create hos-devicerepository-service + if (myUserData->serviceReg != nullptr) { + serviceRegistration_unregister(myUserData->serviceReg); + myUserData->serviceReg = nullptr; + } + myUserData->serviceImpl.reset(new HOSRulesEngineServiceImpl()); // Get HOS Core Service service_reference_pt ref = nullptr; bundleContext_getServiceReference(context, (char*)HOSCoreService::SERVICE_NAME, &ref); - hos::cosgi::HOSCoreService* coreService = nullptr; + HOSCoreService* coreService = nullptr; bundleContext_getService(context, ref, (void**)&coreService); if (coreService == nullptr) { - ROS_ERROR("RulesEngineService: Could not retrieve HOSCoreService."); + ROS_ERROR("RulesEngineService: Could not retrieve HOSCoreService. Are you using hos_cosgi_launcher?"); } else { - int major = 0, minor = 0; - coreService->getServiceVersion(major, minor); - ROS_INFO_STREAM("RulesEngineService: Found HOSCoreService Version " << major << "." << minor); - // Get HOS DeviceRepository Service - service_reference_pt ref2 = nullptr; - bundleContext_getServiceReference(context, (char*)HOSDeviceRepositoryService::SERVICE_NAME, &ref2); - hos::cosgi::HOSDeviceRepositoryService* repoService = nullptr; - bundleContext_getService(context, ref2, (void**)&repoService); - if (repoService == nullptr) { - ROS_ERROR("RulesEngineService: Could not retrieve HOSDeviceRepositoryService."); - } else { - int major2 = 0, minor2 = 0; - repoService->getServiceVersion(major2, minor2); - ROS_INFO_STREAM("RulesEngineService: Found HOSDeviceRepositoryService Version " << major2 << "." << minor2); - // Create and register hos-devicerepository-service - if (myUserData->serviceReg != nullptr) { - serviceRegistration_unregister(myUserData->serviceReg); - } - if (myUserData->serviceImpl != nullptr) { - delete myUserData->serviceImpl; - } - myUserData->serviceImpl = new hos::cosgi::HOSRulesEngineServiceImpl(*coreService, *repoService); - bundleContext_registerService(context, (char*)hos::cosgi::HOSRulesEngineServiceImpl::SERVICE_NAME, &myUserData->serviceImpl, nullptr, &myUserData->serviceReg); - status = CELIX_SUCCESS; - ROS_INFO("RulesEngineService: Bundle successfully started"); - } + myUserData->serviceImpl->setCoreService(coreService); } + // Get HOS Core Service + service_reference_pt ref2 = nullptr; + bundleContext_getServiceReference(context, (char*)HOSDeviceRepositoryService::SERVICE_NAME, &ref2); + HOSDeviceRepositoryService* repoService = nullptr; + bundleContext_getService(context, ref2, (void**)&repoService); + if (repoService) { + myUserData->serviceImpl->setRepoService(repoService); + } + // Register hos-devicerepository-service + if (myUserData->serviceImpl->isInitialized()) { + bundleContext_registerService(context, (char*)HOSRulesEngineServiceImpl::SERVICE_NAME, myUserData->serviceImpl.get(), nullptr, &myUserData->serviceReg); + } + // Register service listener + myUserData->myServiceListener.handle = myUserData; + myUserData->myServiceListener.serviceChanged = cb_serviceChanged; + char filter[256]; + std::snprintf(filter, 256, "(objectClass=%s|objectClass=%s)", HOSDeviceRepositoryService::SERVICE_NAME, HOSRulesExecutionService::SERVICE_NAME); + //bundleContext_addServiceListener(context, &myUserData->myServiceListener, filter); + bundleContext_addServiceListener(context, &myUserData->myServiceListener, nullptr); + ROS_INFO("RulesEngineService: Bundle successfully started"); } else { ROS_ERROR("RulesEngineService: Could not start bundle, user data struct is null"); } @@ -102,13 +141,13 @@ celix_status_t bundleActivator_stop(void * userData, bundle_context_pt context) celix_status_t status = CELIX_ILLEGAL_STATE; if (userData != nullptr) { UserData* myUserData = (UserData*)userData; + status = bundleContext_removeServiceListener(context, &myUserData->myServiceListener); if (myUserData->serviceReg != nullptr) { serviceRegistration_unregister(myUserData->serviceReg); myUserData->serviceReg = nullptr; } - if (myUserData->serviceImpl != nullptr) { - delete myUserData->serviceImpl; - myUserData->serviceImpl = nullptr; + if (myUserData->serviceImpl) { + myUserData->serviceImpl.reset(); } ROS_INFO("RulesEngineService: Bundle successfully stopped"); status = CELIX_SUCCESS; @@ -136,5 +175,3 @@ celix_status_t bundleActivator_destroy(void * userData, bundle_context_pt contex } - - diff --git a/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.cpp b/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.cpp index b5457fdb..d4f5ed78 100644 --- a/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.cpp +++ b/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.cpp @@ -12,18 +12,62 @@ #include #include #include +#include +#include "rulesengine/RulePackage.h" namespace hos { namespace cosgi { +namespace rulesengine { -HOSRulesEngineServiceImpl::HOSRulesEngineServiceImpl(HOSCoreService& coreService, HOSDeviceRepositoryService& repoService) - : coreService(coreService), repoService(repoService), nodehandle(coreService.getPrivateNodeHandle()) { - this->repoService.addObserver(*this); +void HOSRulesEngineServiceImpl::setCoreService(core::HOSCoreService* coreService) { + if (coreService && !this->coreService) { + this->coreService = coreService; + this->nodehandle = coreService->getPrivateNodeHandle(); + int major = 0, minor = 0; + coreService->getServiceVersion(major, minor); + ROS_INFO_STREAM("RulesEngineService: Found HOSCoreService Version " << major << "." << minor); + if (repoService) { + init(); + } + } +} + +void HOSRulesEngineServiceImpl::setRepoService(devicerepository::HOSDeviceRepositoryService* repoService) { + if (repoService && !this->repoService) { + this->repoService = repoService; + int major = 0, minor = 0; + repoService->getServiceVersion(major, minor); + ROS_INFO_STREAM("RulesEngineService: Found HOSDeviceRepositoryService Version " << major << "." << minor); + if (coreService) { + init(); + } + } +} + +void HOSRulesEngineServiceImpl::init() { + nodehandle->getParam("rulesengine_prefix", ruleEnginePrefix); + XmlRpc::XmlRpcValue rawValue; + nodehandle->getParam(ruleEnginePrefix, rawValue); + if (rawValue.getType() == XmlRpc::XmlRpcValue::TypeStruct) { + for (auto pkg : rawValue) { + std::string pname = pkg.first; + XmlRpc::XmlRpcValue pRaw = pkg.second; + try { + addRulePkg(pname, pRaw); + ROS_INFO_STREAM("Created rule package " << pname << "."); + } catch (std::exception& e) { + ROS_ERROR_STREAM("Could not create rule package " << pname << ": " << e.what()); + } + } + } + repoService->addObserver(*this); + initialized = true; + ROS_INFO_STREAM("RulesEngineService: Initialized and Ready."); } HOSRulesEngineServiceImpl::~HOSRulesEngineServiceImpl() { - repoService.deleteObserver(*this); + repoService->deleteObserver(*this); } @@ -33,11 +77,37 @@ void HOSRulesEngineServiceImpl::getServiceVersion(int& major, int& minor) { } -void HOSRulesEngineServiceImpl::notificationReceived(IObservable& o, const DeviceEvent* e) { +void HOSRulesEngineServiceImpl::notificationReceived(IObservable* o, const devicerepository::DeviceEvent* e) { } +void HOSRulesEngineServiceImpl::addRulePkg(std::string name) { + std::stringstream ss; + ss << ruleEnginePrefix << "/" << name; + XmlRpc::XmlRpcValue rawValue; + nodehandle->getParam(ss.str(), rawValue); + addRulePkg(name, rawValue); +} +void HOSRulesEngineServiceImpl::addRulePkg(std::string name, XmlRpc::XmlRpcValue& rawValue) { + std::shared_ptr pkg = RulePackage::createRulePackage(*this, name, rawValue); + if (pkg) { + rulePkgs.insert({name, pkg}); + } +} + +void HOSRulesEngineServiceImpl::removeRulePkg(std::string name) { + rulePkgs.erase(name); +} + +void HOSRulesEngineServiceImpl::addExecutionBackend(rulesexecution::HOSRulesExecutionService* service) { + if (execServices.find(service->getLanguage()) == execServices.end()) { + execServices.insert({service->getLanguage(), service}); + ROS_INFO_STREAM("RulesEngineService: Added execution service \"" << service->getLanguage() << "\"."); + } +} + +} // namespace rulesengine } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.h b/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.h index 830107e1..b4bd8dff 100644 --- a/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.h +++ b/src/hos_cosgi_rulesengine/src/hos_rulesengine_service_impl.h @@ -10,6 +10,7 @@ #include #include +#include #include #include #include @@ -19,37 +20,87 @@ #include #include +#include +#include +#include + + +// Forward declarations namespace XmlRpc { class XmlRpcValue; } - -#include - namespace hos { namespace cosgi { - +namespace core { class HOSCoreService; +} +namespace devicerepository { +class HOSDeviceRepositoryService; +class DeviceEvent; +} +namespace rulesengine { +class RulePackage; +} +} +} -class HOSRulesEngineServiceImpl : public HOSRulesEngineService, public common::IObserver { + +// Service Namespace +namespace hos { +namespace cosgi { +namespace rulesengine { + + +class HOSRulesEngineServiceImpl : public HOSRulesEngineService, public common::IObserver { OBSERVABLE_IMPL(RulesEngineEvent) private: - HOSCoreService& coreService; - HOSDeviceRepositoryService& repoService; - ros::NodeHandle& nodehandle; + typedef std::map> rulePkgMap_t; + typedef std::map execServiceMap_t; + + core::HOSCoreService* coreService = nullptr; + devicerepository::HOSDeviceRepositoryService* repoService = nullptr; + ros::NodeHandle* nodehandle = nullptr; + + std::string ruleEnginePrefix = "/hos/rules/rulesengine0"; + + rulePkgMap_t rulePkgs; + execServiceMap_t execServices; + + bool initialized = false; + + void addRulePkg(std::string name); + void addRulePkg(std::string name, XmlRpc::XmlRpcValue& rawValue); + void removeRulePkg(std::string name); + + void init(); public: - HOSRulesEngineServiceImpl(HOSCoreService& coreService, HOSDeviceRepositoryService& repoService); ~HOSRulesEngineServiceImpl(); + /* Initialization */ - virtual void notificationReceived(IObservable& o, const DeviceEvent* e); + void setCoreService(core::HOSCoreService* coreService); + void setRepoService(devicerepository::HOSDeviceRepositoryService* repoService); + + /* Public Service Implementations */ virtual const char* getServiceName() { return SERVICE_NAME; } virtual void getServiceVersion(int& major, int& minor); + + /* Observer Callback */ + + virtual void notificationReceived(IObservable* o, const devicerepository::DeviceEvent* e); + + /* Internal Stuff */ + + bool isInitialized() { return initialized; } + + void addExecutionBackend(rulesexecution::HOSRulesExecutionService* service); }; +} // namespace rulesengine } // namespace cosgi } // namespace hos diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.cpp b/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.cpp new file mode 100644 index 00000000..fb63057b --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.cpp @@ -0,0 +1,32 @@ +/* + * GlobalContext.cpp + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#include "GlobalContext.h" +#include + +namespace hos { +namespace cosgi { +namespace rulesengine { + +GlobalContext::GlobalContext(RulePackage& parent) + : parent(parent) {} + +GlobalContext::~GlobalContext() { + // TODO Auto-generated destructor stub +} + +std::shared_ptr GlobalContext::createGlobalContext(RulePackage& parent, const XmlRpc::XmlRpcValue& raw) { + std::shared_ptr retval; + if (raw.getType() == XmlRpc::XmlRpcValue::TypeStruct) { + retval = std::make_shared(parent); + } + return retval; +} + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.h b/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.h new file mode 100644 index 00000000..56330174 --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/GlobalContext.h @@ -0,0 +1,47 @@ +/* + * GlobalContext.h + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#ifndef SRC_RULESENGINE_GLOBALCONTEXT_H_ +#define SRC_RULESENGINE_GLOBALCONTEXT_H_ + + +#include + + +// Forward declarations +namespace XmlRpc { +class XmlRpcValue; +} +namespace hos { +namespace cosgi { +namespace rulesengine { +class RulePackage; +} +} +} + + +namespace hos { +namespace cosgi { +namespace rulesengine { + +class GlobalContext { +private: + RulePackage& parent; +public: + GlobalContext(RulePackage& parent); + static std::shared_ptr createGlobalContext(RulePackage& parent, const XmlRpc::XmlRpcValue& raw); + virtual ~GlobalContext(); + + RulePackage& getParent() { return parent; } +}; + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ + +#endif /* SRC_RULESENGINE_GLOBALCONTEXT_H_ */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/Rule.cpp b/src/hos_cosgi_rulesengine/src/rulesengine/Rule.cpp new file mode 100644 index 00000000..0c76213e --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/Rule.cpp @@ -0,0 +1,49 @@ +/* + * Rule.cpp + * + * Created on: 29.04.2015 + * Author: matzman + */ + + +#include "Rule.h" +#include + + +namespace hos { +namespace cosgi { +namespace rulesengine { + + +Rule::Rule(RulePackage& parent, std::string name) + : parent(parent), name(name) {} + +Rule::~Rule() {} + +std::shared_ptr Rule::createRule(RulePackage& parent, std::string name, XmlRpc::XmlRpcValue& raw) { + std::shared_ptr retval; + if (raw.getType() == XmlRpc::XmlRpcValue::TypeStruct) { + retval = std::make_shared(parent, name); + if (raw.hasMember("conditions") && raw["conditions"].getType() == XmlRpc::XmlRpcValue::TypeStruct) { + auto conditions = raw["conditions"]; + for (auto c : conditions) { + + } + if (raw.hasMember("body") && raw["body"].getType() == XmlRpc::XmlRpcValue::TypeString) { + + } else { + ROS_ERROR_STREAM("Could not create rule \"" << name << "\"."); + retval.reset(); + } + } else { + ROS_ERROR_STREAM("Could not create rule \"" << name << "\"."); + retval.reset(); + } + } + return retval; +} + + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/Rule.h b/src/hos_cosgi_rulesengine/src/rulesengine/Rule.h new file mode 100644 index 00000000..527100aa --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/Rule.h @@ -0,0 +1,61 @@ +/* + * Rule.h + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#ifndef SRC_RULESENGINE_RULE_H_ +#define SRC_RULESENGINE_RULE_H_ + + +#include +#include +#include + + +// Forward declarations +namespace XmlRpc { +class XmlRpcValue; +} +namespace hos { +namespace cosgi { +namespace rulesengine { +class RulePackage; +class RuleBody; +class RuleCondition; +} +} +} + + +namespace hos { +namespace cosgi { +namespace rulesengine { + + +class Rule { +private: + RulePackage& parent; + std::string name; + std::shared_ptr body; + std::vector> conditions; +public: + Rule(RulePackage& parent, std::string name); + static std::shared_ptr createRule(RulePackage& parent, std::string name, XmlRpc::XmlRpcValue& raw); + virtual ~Rule(); + + RulePackage& getParent() { return parent; } +}; + +class RuleBody { + +}; + + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ + + +#endif /* SRC_RULESENGINE_RULE_H_ */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.cpp b/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.cpp new file mode 100644 index 00000000..46677864 --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.cpp @@ -0,0 +1,25 @@ +/* + * RuleCondition.cpp + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#include "RuleCondition.h" + +namespace hos { +namespace cosgi { +namespace rulesengine { + +RuleCondition::RuleCondition() { + // TODO Auto-generated constructor stub + +} + +RuleCondition::~RuleCondition() { + // TODO Auto-generated destructor stub +} + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.h b/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.h new file mode 100644 index 00000000..d1d8c91a --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/RuleCondition.h @@ -0,0 +1,25 @@ +/* + * RuleCondition.h + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#ifndef SRC_RULESENGINE_RULECONDITION_H_ +#define SRC_RULESENGINE_RULECONDITION_H_ + +namespace hos { +namespace cosgi { +namespace rulesengine { + +class RuleCondition { +public: + RuleCondition(); + virtual ~RuleCondition(); +}; + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ + +#endif /* SRC_RULESENGINE_RULECONDITION_H_ */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.cpp b/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.cpp new file mode 100644 index 00000000..f698ae7d --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.cpp @@ -0,0 +1,66 @@ +/* + * RulePackage.cpp + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#include "RulePackage.h" +#include "GlobalContext.h" +#include "Rule.h" +#include +#include + +namespace hos { +namespace cosgi { +namespace rulesengine { + +RulePackage::RulePackage(HOSRulesEngineServiceImpl& parent, std::string name) + : parent(parent), name(name) {} + +RulePackage::~RulePackage() { +} + +std::shared_ptr RulePackage::createRulePackage(HOSRulesEngineServiceImpl& parent, std::string name, XmlRpc::XmlRpcValue& raw) { + std::shared_ptr retval; + if (raw.getType() == XmlRpc::XmlRpcValue::TypeStruct) { + retval = std::make_shared(parent, name); + if (raw.hasMember("language") && raw["language"].getType() == XmlRpc::XmlRpcValue::TypeString) { + retval->language = static_cast(raw["language"]); + } else { + throw std::runtime_error("Rule package JSON is missing language parameter or parameter has wrong type."); + } + if (raw.hasMember("globalcontext")) { + retval->globalContext = GlobalContext::createGlobalContext(*retval, raw["globalcontext"]); + } + if (raw.hasMember("rules") && raw["rules"].getType() == XmlRpc::XmlRpcValue::TypeStruct) { + for (auto r : raw["rules"]) { + std::shared_ptr rule = Rule::createRule(*retval, r.first, r.second); + if (rule) { + retval->rules.insert({r.first, rule}); + } + } + if (retval->rules.size() == 0) { + throw std::runtime_error("Rule package has no rules."); + } + } else { + throw std::runtime_error("Rule package JSON is missing rules parameter or parameter has wrong type."); + } + } else { + throw std::runtime_error("Rule package JSON is not valid."); + } + return retval; +} + +size_t RulePackage::getRules(std::vector>& rules) { + size_t retval = 0; + for (auto item : this->rules) { + rules.push_back(item.second); + retval++; + } + return retval; +} + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ diff --git a/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.h b/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.h new file mode 100644 index 00000000..a8281f94 --- /dev/null +++ b/src/hos_cosgi_rulesengine/src/rulesengine/RulePackage.h @@ -0,0 +1,63 @@ +/* + * RulePackage.h + * + * Created on: 29.04.2015 + * Author: matzman + */ + +#ifndef SRC_RULESENGINE_RULEPACKAGE_H_ +#define SRC_RULESENGINE_RULEPACKAGE_H_ + + +#include +#include +#include +#include + + +// Forward declarations +namespace XmlRpc { +class XmlRpcValue; +} +namespace hos { +namespace cosgi { +namespace rulesengine { +class HOSRulesEngineServiceImpl; +class GlobalContext; +class Rule; +} +} +} + + +namespace hos { +namespace cosgi { +namespace rulesengine { + +class RulePackage { +private: + typedef std::map> ruleMap_t; + + std::string name; + std::string language; + ruleMap_t rules; + std::shared_ptr globalContext; + HOSRulesEngineServiceImpl& parent; + + +public: + RulePackage(HOSRulesEngineServiceImpl& parent, std::string name); + static std::shared_ptr createRulePackage(HOSRulesEngineServiceImpl& parent, std::string name, XmlRpc::XmlRpcValue& raw); + virtual ~RulePackage(); + + std::shared_ptr getRule(const std::string& name) { return rules[name]; } + size_t getRules(std::vector>& rules); + + HOSRulesEngineServiceImpl& getParent() { return parent; } +}; + +} /* namespace rulesengine */ +} /* namespace cosgi */ +} /* namespace hos */ + +#endif /* SRC_RULESENGINE_RULEPACKAGE_H_ */ diff --git a/src/hos_cosgi_rulesengine/test/rulepkg01.json b/src/hos_cosgi_rulesengine/test/rulepkg01.json new file mode 100644 index 00000000..b54d2d11 --- /dev/null +++ b/src/hos_cosgi_rulesengine/test/rulepkg01.json @@ -0,0 +1,32 @@ +{ + "language": "python", + "globalcontext": {}, + "rules": { + "rule01": { + "conditions": [ + { + "type": "devicemsg", + "deviceid": "huelight1" + }, + { + "type": "devicestatus", + "deviceid": "huelight1" + } + ], + "body": "print \"Hello World1\"" + }, + "rule02": { + "conditions": [ + { + "type": "devicemsg", + "deviceid": "huelight2" + }, + { + "type": "devicestatus", + "deviceid": "huelight2" + } + ], + "body": "print \"Hello World2\"" + } + } +} \ No newline at end of file diff --git a/src/hos_cosgi_rulesexecution_python/CMakeLists.txt b/src/hos_cosgi_rulesexecution_python/CMakeLists.txt new file mode 100644 index 00000000..ebdfb678 --- /dev/null +++ b/src/hos_cosgi_rulesexecution_python/CMakeLists.txt @@ -0,0 +1,205 @@ +cmake_minimum_required(VERSION 2.8.3) +project(hos_cosgi_rulesexecution_python) + +## Find catkin macros and libraries +## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) +## is used, also find other catkin packages +find_package(catkin REQUIRED COMPONENTS + hos_celix + hos_cosgi_common + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cpp_common + hos_libvariant +) + +## System dependencies are found with CMake's conventions +# find_package(Boost REQUIRED COMPONENTS system) + + +## Uncomment this if the package has a setup.py. This macro ensures +## modules and global scripts declared therein get installed +## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html +# catkin_python_setup() + +find_package(APR REQUIRED) +find_package(CELIX REQUIRED) +find_package(Boost REQUIRED) + + +################################################ +## Declare ROS messages, services and actions ## +################################################ + +## To declare and build messages, services or actions from within this +## package, follow these steps: +## * Let MSG_DEP_SET be the set of packages whose message types you use in +## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). +## * In the file package.xml: +## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependencies might have been +## pulled in transitively but can be declared for certainty nonetheless: +## * add a build_depend tag for "message_generation" +## * add a run_depend tag for "message_runtime" +## * In this file (CMakeLists.txt): +## * add "message_generation" and every package in MSG_DEP_SET to +## find_package(catkin REQUIRED COMPONENTS ...) +## * add "message_runtime" and every package in MSG_DEP_SET to +## catkin_package(CATKIN_DEPENDS ...) +## * uncomment the add_*_files sections below as needed +## and list every .msg/.srv/.action file to be processed +## * uncomment the generate_messages entry below +## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) + +## Generate messages in the 'msg' folder +# add_message_files( +# FILES +# Message1.msg +# Message2.msg +# ) + +## Generate services in the 'srv' folder +# add_service_files( +# FILES +# Service1.srv +# Service2.srv +# ) + +## Generate actions in the 'action' folder +# add_action_files( +# FILES +# Action1.action +# Action2.action +# ) + +## Generate added messages and services with any dependencies listed here +# generate_messages( +# DEPENDENCIES +# std_msgs # Or other packages containing msgs +# ) + +################################### +## catkin specific configuration ## +################################### +## The catkin_package macro generates cmake config files for your package +## Declare things to be passed to dependent projects +## INCLUDE_DIRS: uncomment this if you package contains header files +## LIBRARIES: libraries you create in this project that dependent projects also need +## CATKIN_DEPENDS: catkin_packages dependent projects also need +## DEPENDS: system dependencies of this project that dependent projects also need +catkin_package( +# INCLUDE_DIRS include +# LIBRARIES hos_cosgi_rulesexecution_python + CATKIN_DEPENDS hos_celix hos_cosgi_common hos_cosgi_launcher hos_cosgi_rulesengine hos_cpp_common hos_libvariant +# DEPENDS system_lib +) + +########### +## Build ## +########### + +add_definitions( + -std=c++11 +) + +## Specify additional locations of header files +## Your package locations should be listed before other locations +# include_directories(include) +include_directories( + ${catkin_INCLUDE_DIRS} + ${APR_INCLUDE_DIR} + ${APR_INCLUDE_DIR}/apr-1.0 + include + ${hos_libvariant_INCLUDE_DIRS}/hos_libvariant +) + +set(BUNDLE_SYMBOLICNAME "hos.hos_rulesexecution_python") +set(BUNDLE_VERSION "1.0.0") +set(BUNDLE_NAME "hos_rulesexecution_python") + +bundle(hos_cosgi_rulesexecution_python + SOURCES + ${PROJECT_SOURCE_DIR}/src/bundle_activator + ${PROJECT_SOURCE_DIR}/src/hos_rulesexecution_python_impl +) +target_link_libraries(hos_cosgi_rulesexecution_python + ${catkin_LIBRARIES} + ${APR_LIBRARIES} +) + +## Declare a cpp library +# add_library(hos_cosgi_rulesexecution_python +# src/${PROJECT_NAME}/hos_cosgi_rulesexecution_python.cpp +# ) + +## Declare a cpp executable +# add_executable(hos_cosgi_rulesexecution_python_node src/hos_cosgi_rulesexecution_python_node.cpp) + +## Add cmake target dependencies of the executable/library +## as an example, message headers may need to be generated before nodes +# add_dependencies(hos_cosgi_rulesexecution_python_node hos_cosgi_rulesexecution_python_generate_messages_cpp) + +## Specify libraries to link a library or executable target against +# target_link_libraries(hos_cosgi_rulesexecution_python_node +# ${catkin_LIBRARIES} +# ) + +############# +## Install ## +############# + +## Mark cpp header files for installation +#install(DIRECTORY include/${PROJECT_NAME}/ +# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} +# FILES_MATCHING PATTERN "*.h" +#) + +install(FILES + ${CMAKE_BINARY_DIR}/hos_cosgi_rulesexecution_python.zip + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/bundles +) + + +# all install targets should use catkin DESTINATION variables +# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html + +## Mark executable scripts (Python etc.) for installation +## in contrast to setup.py, you can choose the destination +# install(PROGRAMS +# scripts/my_python_script +# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark executables and/or libraries for installation +# install(TARGETS hos_cosgi_rulesexecution_python hos_cosgi_rulesexecution_python_node +# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark cpp header files for installation +# install(DIRECTORY include/${PROJECT_NAME}/ +# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} +# FILES_MATCHING PATTERN "*.h" +# PATTERN ".svn" EXCLUDE +# ) + +## Mark other files for installation (e.g. launch and bag files, etc.) +# install(FILES +# # myfile1 +# # myfile2 +# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +# ) + +############# +## Testing ## +############# + +## Add gtest based cpp test target and link libraries +# catkin_add_gtest(${PROJECT_NAME}-test test/test_hos_cosgi_rulesexecution_python.cpp) +# if(TARGET ${PROJECT_NAME}-test) +# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) +# endif() + +## Add folders to be run by python nosetests +# catkin_add_nosetests(test) diff --git a/src/hos_cosgi_rulesexecution_python/package.xml b/src/hos_cosgi_rulesexecution_python/package.xml new file mode 100644 index 00000000..83fbfd52 --- /dev/null +++ b/src/hos_cosgi_rulesexecution_python/package.xml @@ -0,0 +1,62 @@ + + + hos_cosgi_rulesexecution_python + 0.0.0 + The hos_cosgi_rulesexecution_python package + + + + + matzman + + + + + + TODO + + + + + + + + + + + + + + + + + + + + + + + + + + catkin + hos_celix + hos_cosgi_common + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cpp_common + hos_libvariant + hos_celix + hos_cosgi_common + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cpp_common + hos_libvariant + + + + + + + + \ No newline at end of file diff --git a/src/hos_cosgi_rulesexecution_python/src/bundle_activator.cpp b/src/hos_cosgi_rulesexecution_python/src/bundle_activator.cpp new file mode 100644 index 00000000..1260a845 --- /dev/null +++ b/src/hos_cosgi_rulesexecution_python/src/bundle_activator.cpp @@ -0,0 +1,170 @@ +/* + * bundle_activator.cpp + * + * Created on: 26.04.2015 + * Author: matzman + */ + +#include +#include + +#include + +#include "ros/ros.h" + +extern "C" { + #include "hos_celix/bundle_activator.h" + #include "hos_celix/bundle_context.h" + #include "hos_celix/service_reference.h" + #include "hos_celix/constants.h" +} + +#include +#include +#include "hos_rulesexecution_python_impl.h" +#include + + +using namespace hos::cosgi::rulesengine; +using namespace hos::cosgi::rulesexecution; +using namespace hos::cosgi::devicerepository; +using namespace hos::cosgi::core; +using namespace hos::cosgi; + + + +struct UserData { + apr_pool_t* memoryPool = nullptr; + std::unique_ptr serviceImpl = nullptr; + service_registration_pt serviceReg = nullptr; + serviceListener myServiceListener; + bundle_context_pt bundleContext; +}; + + +celix_status_t cb_serviceChanged(void* listener, service_event_pt event) { + UserData* myUserData = (UserData*) ((serviceListener*)listener)->handle; + if (event->type == OSGI_FRAMEWORK_SERVICE_EVENT_REGISTERED) { + char* serviceName = nullptr; + bool checkReg = false; + serviceReference_getProperty(event->reference, (char*)OSGI_FRAMEWORK_OBJECTCLASS, &serviceName); + if (serviceName && std::strcmp(serviceName, HOSDeviceRepositoryService::SERVICE_NAME) == 0) { + HOSDeviceRepositoryService *service = nullptr; + bundleContext_getService(myUserData->bundleContext, event->reference, (void**)&service); + myUserData->serviceImpl->setRepoService(service); + checkReg = true; + } + // Register hos-devicerepository-service + if (checkReg && !myUserData->serviceReg && myUserData->serviceImpl->isInitialized()) { + bundleContext_registerService(myUserData->bundleContext, (char*)HOSRulesExecutionPythonImpl::SERVICE_NAME, myUserData->serviceImpl.get(), nullptr, &myUserData->serviceReg); + } + } else if (event->type == OSGI_FRAMEWORK_SERVICE_EVENT_UNREGISTERING) { + } + return CELIX_SUCCESS; +} + +celix_status_t bundleActivator_create(bundle_context_pt context, void **userData) { + celix_status_t status = CELIX_SUCCESS; + apr_pool_t* memoryPool = nullptr; + // Create APR memory pool + apr_status_t astatus = apr_pool_create(&memoryPool, NULL); + if (astatus != APR_SUCCESS) { + ROS_ERROR("RulesExecutionPythonService: Could not create APR memory pool (%i).", astatus); + } else { + // Create user data + UserData* myUserData = (UserData*)apr_palloc(memoryPool, sizeof(UserData)); + if (myUserData != nullptr) { + myUserData->memoryPool = memoryPool; + myUserData->bundleContext = context; + *userData = (void*)myUserData; + status = CELIX_SUCCESS; + ROS_INFO("RulesExecutionPythonService: Bundle successfully created"); + } else { + ROS_ERROR("RulesExecutionPythonService: Could not create user data struct"); + apr_pool_destroy(memoryPool); + } + } + return status; +} + +celix_status_t bundleActivator_start(void * userData, bundle_context_pt context) { + celix_status_t status = CELIX_SUCCESS; + if (userData != nullptr) { + UserData* myUserData = (UserData*)userData; + // Create hos-rulesexecution-python-service + if (myUserData->serviceReg != nullptr) { + serviceRegistration_unregister(myUserData->serviceReg); + myUserData->serviceReg = nullptr; + } + myUserData->serviceImpl.reset(new HOSRulesExecutionPythonImpl()); + // Get HOS Core Service + service_reference_pt ref = nullptr; + bundleContext_getServiceReference(context, (char*)HOSCoreService::SERVICE_NAME, &ref); + HOSCoreService* coreService = nullptr; + bundleContext_getService(context, ref, (void**)&coreService); + if (coreService == nullptr) { + ROS_ERROR("RulesExecutionPythonService: Could not retrieve HOSCoreService. Are you using hos_cosgi_launcher?"); + } else { + myUserData->serviceImpl->setCoreService(coreService); + } + // Get HOS Core Service + service_reference_pt ref2 = nullptr; + bundleContext_getServiceReference(context, (char*)HOSDeviceRepositoryService::SERVICE_NAME, &ref2); + HOSDeviceRepositoryService* repoService = nullptr; + bundleContext_getService(context, ref2, (void**)&repoService); + if (repoService) { + myUserData->serviceImpl->setRepoService(repoService); + } + // Register hos-rulesexecution-python-service + if (myUserData->serviceImpl->isInitialized()) { + bundleContext_registerService(context, (char*)HOSRulesExecutionPythonImpl::SERVICE_NAME, myUserData->serviceImpl.get(), nullptr, &myUserData->serviceReg); + } + // Register service listener + myUserData->myServiceListener.handle = myUserData; + myUserData->myServiceListener.serviceChanged = cb_serviceChanged; + char filter[256]; + std::snprintf(filter, 256, "(objectClass=%s)", HOSDeviceRepositoryService::SERVICE_NAME); + bundleContext_addServiceListener(context, &myUserData->myServiceListener, filter); + ROS_INFO("RulesExecutionPythonService: Bundle successfully started"); + } else { + ROS_ERROR("RulesExecutionPythonService: Could not start bundle, user data struct is null"); + } + return status; +} + +celix_status_t bundleActivator_stop(void * userData, bundle_context_pt context) { + celix_status_t status = CELIX_ILLEGAL_STATE; + if (userData != nullptr) { + UserData* myUserData = (UserData*)userData; + status = bundleContext_removeServiceListener(context, &myUserData->myServiceListener); + if (myUserData->serviceReg != nullptr) { + serviceRegistration_unregister(myUserData->serviceReg); + myUserData->serviceReg = nullptr; + } + if (myUserData->serviceImpl) { + myUserData->serviceImpl.reset(); + } + ROS_INFO("RulesExecutionPythonService: Bundle successfully stopped"); + status = CELIX_SUCCESS; + } else { + ROS_ERROR("RulesExecutionPythonService: Could not stop bundle, user data struct is null"); + } + return status; +} + +celix_status_t bundleActivator_destroy(void * userData, bundle_context_pt context) { + celix_status_t status = CELIX_ILLEGAL_STATE; + if (userData != nullptr) { + apr_pool_t* memoryPool = ((UserData*)userData)->memoryPool; + if (memoryPool != nullptr) { + apr_pool_destroy(memoryPool); + ROS_INFO("RulesExecutionPythonService: Bundle successfully destroyed"); + } else { + ROS_ERROR("RulesExecutionPythonService: Could not destroy bundle, there is no APR memory pool"); + } + status = CELIX_SUCCESS; + } else { + ROS_ERROR("RulesExecutionPythonService: Could not destroy bundle, user data struct is null"); + } + return status; +} diff --git a/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.cpp b/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.cpp new file mode 100644 index 00000000..f06d911c --- /dev/null +++ b/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.cpp @@ -0,0 +1,71 @@ +/* + * hos_cosgi_rulesexecution_python_impl.cpp + * + * Created on: 01.05.2015 + * Author: matzman + */ + +#include "hos_rulesexecution_python_impl.h" +#include +#include + + +namespace hos { +namespace cosgi { +namespace rulesexecution { + +void HOSRulesExecutionPythonImpl::setCoreService(core::HOSCoreService* coreService) { + if (coreService && !this->coreService) { + this->coreService = coreService; + this->nodehandle = coreService->getPrivateNodeHandle(); + int major = 0, minor = 0; + coreService->getServiceVersion(major, minor); + ROS_INFO_STREAM("RulesExecutionPythonService: Found HOSCoreService Version " << major << "." << minor); + if (repoService) { + init(); + } + } +} + +void HOSRulesExecutionPythonImpl::setRepoService(devicerepository::HOSDeviceRepositoryService* repoService) { + if (repoService && !this->repoService) { + this->repoService = repoService; + int major = 0, minor = 0; + repoService->getServiceVersion(major, minor); + ROS_INFO_STREAM("RulesExecutionPythonService: Found HOSDeviceRepositoryService Version " << major << "." << minor); + if (coreService) { + init(); + } + } +} + +void HOSRulesExecutionPythonImpl::init() { + initialized = true; + ROS_INFO_STREAM("RulesExecutionPythonService: Initialized and Ready."); +} + + + +void HOSRulesExecutionPythonImpl::getServiceVersion(int& major, int& minor) { + major = SERVICE_VERSION_MAJOR; + minor = SERVICE_VERSION_MINOR; +} + +std::shared_ptr HOSRulesExecutionPythonImpl::createGlobalExecutionContext(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw) { + std::shared_ptr retval; + return retval; +} + +std::shared_ptr HOSRulesExecutionPythonImpl::createRuleBody(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw) { + std::shared_ptr retval; + return retval; +} + + + + +} // namespace rulesengine +} // namespace cosgi +} // namespace hos + + diff --git a/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.h b/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.h new file mode 100644 index 00000000..41caca8d --- /dev/null +++ b/src/hos_cosgi_rulesexecution_python/src/hos_rulesexecution_python_impl.h @@ -0,0 +1,81 @@ +/* + * hos_cosgi_rulesexecution_python_impl.h + * + * Created on: 01.05.2015 + * Author: matzman + */ + +#ifndef SRC_HOS_RULESEXECUTION_PYTHON_IMPL_H_ +#define SRC_HOS_RULESEXECUTION_PYTHON_IMPL_H_ + +#include +#include +#include + + +// Forward declarations +namespace XmlRpc { +class XmlRpcValue; +} +namespace hos { +namespace cosgi { +namespace core { +class HOSCoreService; +} +namespace devicerepository { +class HOSDeviceRepositoryService; +class DeviceEvent; +} +} +} + + +namespace hos { +namespace cosgi { +namespace rulesexecution { + + +class HOSRulesExecutionPythonImpl : public HOSRulesExecutionService { +private: + core::HOSCoreService* coreService = nullptr;; + devicerepository::HOSDeviceRepositoryService* repoService = nullptr;; + ros::NodeHandle* nodehandle = nullptr; + + bool initialized = false; + + void init(); + +public: + static constexpr int SERVICE_VERSION_MAJOR = 1; + static constexpr int SERVICE_VERSION_MINOR = 0; + static constexpr const char* LANGUAGE = "python"; + + /* Initialization */ + + void setCoreService(core::HOSCoreService* coreService); + void setRepoService(devicerepository::HOSDeviceRepositoryService* repoService); + + /* Public Service Implementations */ + + virtual const char* getServiceName() { return SERVICE_NAME; } + virtual void getServiceVersion(int& major, int& minor); + + virtual std::string getLanguage() { return LANGUAGE; } + + virtual std::shared_ptr createGlobalExecutionContext(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw); + virtual std::shared_ptr createRuleBody(rulesengine::RulePackage* parent, XmlRpc::XmlRpcValue& raw); + + /* Internal Stuff */ + + bool isInitialized() { return initialized; } + +}; + + + +} // namespace rulesengine +} // namespace cosgi +} // namespace hos + + +#endif /* SRC_HOS_RULESEXECUTION_PYTHON_IMPL_H_ */ diff --git a/src/hos_cpp_common/include/hos_cpp_common/observable.h b/src/hos_cpp_common/include/hos_cpp_common/observable.h index 742e3290..c1bb480d 100644 --- a/src/hos_cpp_common/include/hos_cpp_common/observable.h +++ b/src/hos_cpp_common/include/hos_cpp_common/observable.h @@ -8,6 +8,7 @@ #ifndef INCLUDE_HOS_CPP_COMMON_OBSERVABLE_H_ #define INCLUDE_HOS_CPP_COMMON_OBSERVABLE_H_ +#include namespace hos { namespace common { @@ -20,7 +21,7 @@ template class IObserver { public: virtual ~IObserver() {} - virtual void notificationReceived(IObservable& o, const Event* e) = 0; + virtual void notificationReceived(IObservable* o, const Event* e) = 0; }; @@ -30,11 +31,13 @@ public: virtual ~IObservable() {} virtual void addObserver(IObserver& o) = 0; virtual void deleteObserver(IObserver& o) = 0; - virtual void deleteObservers() = 0; - virtual size_t countObservers() = 0; + virtual void deleteObservers(Event* e = nullptr) = 0; // The only purpose of the argument is to enable function overloading + virtual size_t countObservers(Event* e = nullptr) = 0; // The only purpose of the argument is to enable function overloading virtual void notifyObservers(const Event* e = nullptr) = 0; }; +#define OBSERVABLE_SELECT(Event) (Event*)nullptr + } // namespace common } // namespace hos diff --git a/src/hos_cpp_common/include/hos_cpp_common/observable_impl.h b/src/hos_cpp_common/include/hos_cpp_common/observable_impl.h index 3af60770..4e3b20c6 100644 --- a/src/hos_cpp_common/include/hos_cpp_common/observable_impl.h +++ b/src/hos_cpp_common/include/hos_cpp_common/observable_impl.h @@ -16,36 +16,39 @@ namespace hos { namespace common { -#define OBSERVABLE_IMPL(Event) \ +#define OBSERVABLE_IMPL(Event) OBSERVABLE_IMPL2(Event, observers) + +#define OBSERVABLE_IMPL2(Event, memberBaseName) \ protected: \ - std::mutex __listenersLock; \ - std::unordered_set*> __listeners; \ + std::mutex __ ## memberBaseName ## Mutex; \ + std::unordered_set*> __ ## memberBaseName; \ public: \ virtual void addObserver(hos::common::IObserver& o) { \ - std::lock_guard lock(__listenersLock); \ - auto elem = __listeners.find(&o); \ - if (elem == __listeners.end()) { \ - __listeners.insert(&o); \ + std::lock_guard lock(__ ## memberBaseName ## Mutex); \ + auto elem = __ ## memberBaseName.find(&o); \ + if (elem == __ ## memberBaseName.end()) { \ + __ ## memberBaseName.insert(&o); \ } \ } \ virtual void deleteObserver(hos::common::IObserver& o) { \ - std::lock_guard lock(__listenersLock); \ - auto elem = __listeners.find(&o); \ - if (elem != __listeners.end()) { \ - __listeners.erase(elem); \ + std::lock_guard lock(__ ## memberBaseName ## Mutex); \ + auto elem = __ ## memberBaseName.find(&o); \ + if (elem != __ ## memberBaseName.end()) { \ + __ ## memberBaseName.erase(elem); \ } \ } \ - virtual void deleteObservers() { \ - std::lock_guard lock(__listenersLock); \ - __listeners.clear(); \ + virtual void deleteObservers(Event* e = nullptr) { \ + std::lock_guard lock(__ ## memberBaseName ## Mutex); \ + __ ## memberBaseName.clear(); \ } \ - virtual size_t countObservers() { \ - return __listeners.size(); \ + virtual size_t countObservers(Event* e = nullptr) { \ + std::lock_guard lock(__ ## memberBaseName ## Mutex); \ + return __ ## memberBaseName.size(); \ } \ virtual void notifyObservers(const Event* e = nullptr) { \ - std::lock_guard lock(__listenersLock); \ - for (hos::common::IObserver* l : __listeners) { \ - l->notificationReceived(*this, e); \ + std::lock_guard lock(__ ## memberBaseName ## Mutex); \ + for (hos::common::IObserver* l : __ ## memberBaseName) { \ + l->notificationReceived(this, e); \ } \ } diff --git a/src/hos_launch/CMakeLists.txt b/src/hos_launch/CMakeLists.txt new file mode 100644 index 00000000..3a667a47 --- /dev/null +++ b/src/hos_launch/CMakeLists.txt @@ -0,0 +1,170 @@ +cmake_minimum_required(VERSION 2.8.3) +project(hos_launch) + +## Find catkin macros and libraries +## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) +## is used, also find other catkin packages +find_package(catkin REQUIRED COMPONENTS + hos_core_types + hos_cosgi_devicerepository + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cosgi_rulesexecution_python + hos_philips_hue +) + +## System dependencies are found with CMake's conventions +# find_package(Boost REQUIRED COMPONENTS system) + + +## Uncomment this if the package has a setup.py. This macro ensures +## modules and global scripts declared therein get installed +## See http://ros.org/doc/api/catkin/html/user_guide/setup_dot_py.html +# catkin_python_setup() + +################################################ +## Declare ROS messages, services and actions ## +################################################ + +## To declare and build messages, services or actions from within this +## package, follow these steps: +## * Let MSG_DEP_SET be the set of packages whose message types you use in +## your messages/services/actions (e.g. std_msgs, actionlib_msgs, ...). +## * In the file package.xml: +## * add a build_depend and a run_depend tag for each package in MSG_DEP_SET +## * If MSG_DEP_SET isn't empty the following dependencies might have been +## pulled in transitively but can be declared for certainty nonetheless: +## * add a build_depend tag for "message_generation" +## * add a run_depend tag for "message_runtime" +## * In this file (CMakeLists.txt): +## * add "message_generation" and every package in MSG_DEP_SET to +## find_package(catkin REQUIRED COMPONENTS ...) +## * add "message_runtime" and every package in MSG_DEP_SET to +## catkin_package(CATKIN_DEPENDS ...) +## * uncomment the add_*_files sections below as needed +## and list every .msg/.srv/.action file to be processed +## * uncomment the generate_messages entry below +## * add every package in MSG_DEP_SET to generate_messages(DEPENDENCIES ...) + +## Generate messages in the 'msg' folder +# add_message_files( +# FILES +# Message1.msg +# Message2.msg +# ) + +## Generate services in the 'srv' folder +# add_service_files( +# FILES +# Service1.srv +# Service2.srv +# ) + +## Generate actions in the 'action' folder +# add_action_files( +# FILES +# Action1.action +# Action2.action +# ) + +## Generate added messages and services with any dependencies listed here +# generate_messages( +# DEPENDENCIES +# std_msgs # Or other packages containing msgs +# ) + +################################### +## catkin specific configuration ## +################################### +## The catkin_package macro generates cmake config files for your package +## Declare things to be passed to dependent projects +## INCLUDE_DIRS: uncomment this if you package contains header files +## LIBRARIES: libraries you create in this project that dependent projects also need +## CATKIN_DEPENDS: catkin_packages dependent projects also need +## DEPENDS: system dependencies of this project that dependent projects also need +catkin_package( +# INCLUDE_DIRS include +# LIBRARIES hos_launch +# CATKIN_DEPENDS hos_core_types hos_cosgi_devicerepository hos_cosgi_launcher hos_cosgi_rulesengine hos_cosgi_rulesexecution_python hos_philips_hue +# DEPENDS system_lib +) + +########### +## Build ## +########### + +## Specify additional locations of header files +## Your package locations should be listed before other locations +# include_directories(include) +include_directories( + ${catkin_INCLUDE_DIRS} +) + +## Declare a cpp library +# add_library(hos_launch +# src/${PROJECT_NAME}/hos_launch.cpp +# ) + +## Declare a cpp executable +# add_executable(hos_launch_node src/hos_launch_node.cpp) + +## Add cmake target dependencies of the executable/library +## as an example, message headers may need to be generated before nodes +# add_dependencies(hos_launch_node hos_launch_generate_messages_cpp) + +## Specify libraries to link a library or executable target against +# target_link_libraries(hos_launch_node +# ${catkin_LIBRARIES} +# ) + +############# +## Install ## +############# + +install(DIRECTORY launch + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION}/ +) + +# all install targets should use catkin DESTINATION variables +# See http://ros.org/doc/api/catkin/html/adv_user_guide/variables.html + +## Mark executable scripts (Python etc.) for installation +## in contrast to setup.py, you can choose the destination +# install(PROGRAMS +# scripts/my_python_script +# DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark executables and/or libraries for installation +# install(TARGETS hos_launch hos_launch_node +# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} +# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +# ) + +## Mark cpp header files for installation +# install(DIRECTORY include/${PROJECT_NAME}/ +# DESTINATION ${CATKIN_PACKAGE_INCLUDE_DESTINATION} +# FILES_MATCHING PATTERN "*.h" +# PATTERN ".svn" EXCLUDE +# ) + +## Mark other files for installation (e.g. launch and bag files, etc.) +# install(FILES +# # myfile1 +# # myfile2 +# DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +# ) + +############# +## Testing ## +############# + +## Add gtest based cpp test target and link libraries +# catkin_add_gtest(${PROJECT_NAME}-test test/test_hos_launch.cpp) +# if(TARGET ${PROJECT_NAME}-test) +# target_link_libraries(${PROJECT_NAME}-test ${PROJECT_NAME}) +# endif() + +## Add folders to be run by python nosetests +# catkin_add_nosetests(test) diff --git a/src/hos_launch/launch/hos_all.launch b/src/hos_launch/launch/hos_all.launch new file mode 100644 index 00000000..9a96a9cf --- /dev/null +++ b/src/hos_launch/launch/hos_all.launch @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/src/hos_launch/launch/hos_cosgi.launch b/src/hos_launch/launch/hos_cosgi.launch new file mode 100644 index 00000000..c5c01430 --- /dev/null +++ b/src/hos_launch/launch/hos_cosgi.launch @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/src/hos_launch/package.xml b/src/hos_launch/package.xml new file mode 100644 index 00000000..ea2dbbe2 --- /dev/null +++ b/src/hos_launch/package.xml @@ -0,0 +1,62 @@ + + + hos_launch + 0.0.0 + The hos_launch package + + + + + matzman + + + + + + TODO + + + + + + + + + + + + + + + + + + + + + + + + + + catkin + hos_core_types + hos_cosgi_devicerepository + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cosgi_rulesexecution_python + hos_philips_hue + hos_core_types + hos_cosgi_devicerepository + hos_cosgi_launcher + hos_cosgi_rulesengine + hos_cosgi_rulesexecution_python + hos_philips_hue + + + + + + + + \ No newline at end of file diff --git a/src/hos_libvariant/CMakeLists.txt b/src/hos_libvariant/CMakeLists.txt index 9ae7b315..1db044d6 100644 --- a/src/hos_libvariant/CMakeLists.txt +++ b/src/hos_libvariant/CMakeLists.txt @@ -4,7 +4,9 @@ project(hos_libvariant) ## Find catkin macros and libraries ## if COMPONENTS list like find_package(catkin REQUIRED COMPONENTS xyz) ## is used, also find other catkin packages -find_package(catkin REQUIRED) +find_package(catkin REQUIRED COMPONENTS + roscpp +) ## System dependencies are found with CMake's conventions # find_package(Boost REQUIRED COMPONENTS system) @@ -77,8 +79,8 @@ find_package(catkin REQUIRED) ## DEPENDS: system dependencies of this project that dependent projects also need catkin_package( INCLUDE_DIRS include/hos_libvariant - LIBRARIES Variant -# CATKIN_DEPENDS other_catkin_pkg + LIBRARIES Variant hos_cpp_json + CATKIN_DEPENDS roscpp # DEPENDS system_lib ) @@ -89,8 +91,8 @@ catkin_package( include(ExternalProject) ExternalProject_Add( libvariant_project - SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src - CONFIGURE_COMMAND cmake ${CMAKE_CURRENT_SOURCE_DIR}/src + SOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/src/libvariant + CONFIGURE_COMMAND cmake ${CMAKE_CURRENT_SOURCE_DIR}/src/libvariant -DCMAKE_INSTALL_PREFIX=${CATKIN_DEVEL_PREFIX} -DBUILD_SHARED_LIBS=TRUE -DLIBVARIANT_BUILD_EXAMPLES=FALSE @@ -104,6 +106,17 @@ ExternalProject_Add( libvariant_project INSTALL_COMMAND make install ) +add_definitions( + -std=c++11 + -fPIC +) + +include_directories( + ${catkin_INCLUDE_DIRS} + include + include/hos_libvariant +) + add_library( Variant SHARED IMPORTED ) set_property( TARGET Variant PROPERTY IMPORTED_LOCATION "${CATKIN_DEVEL_PREFIX}/lib/libVariant.so") add_dependencies( Variant libvariant_project ) @@ -113,9 +126,12 @@ add_dependencies( Variant libvariant_project ) # include_directories(include) ## Declare a cpp library -# add_library(hos_libvariant -# src/${PROJECT_NAME}/hos_libvariant.cpp -# ) +add_library(hos_cpp_json STATIC + src/HosSchemaLoader/HosSchemaLoader.cpp +) +target_link_libraries(hos_cpp_json + ${catkin_LIBRARIES} +) ## Declare a cpp executable # add_executable(hos_libvariant_node src/hos_libvariant_node.cpp) @@ -159,11 +175,11 @@ install(DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/cmake/ # ) ## Mark executables and/or libraries for installation -# install(TARGETS hos_libvariant hos_libvariant_node -# ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} -# RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} -# ) +install(TARGETS hos_cpp_json + ARCHIVE DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + LIBRARY DESTINATION ${CATKIN_PACKAGE_LIB_DESTINATION} + RUNTIME DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION} +) ## Mark cpp header files for installation # install(DIRECTORY include/${PROJECT_NAME}/ diff --git a/src/hos_cosgi_devicerepository/src/HosSchemaLoader.h b/src/hos_libvariant/include/hos_libvariant/HosSchemaLoader/HosSchemaLoader.h similarity index 70% rename from src/hos_cosgi_devicerepository/src/HosSchemaLoader.h rename to src/hos_libvariant/include/hos_libvariant/HosSchemaLoader/HosSchemaLoader.h index de888acb..7bca8f8b 100644 --- a/src/hos_cosgi_devicerepository/src/HosSchemaLoader.h +++ b/src/hos_libvariant/include/hos_libvariant/HosSchemaLoader/HosSchemaLoader.h @@ -12,21 +12,26 @@ #include #include -namespace hos { -class HosSchemaLoader: public libvariant::SchemaLoader { +namespace hos { +namespace libvariant { + + +class HosSchemaLoader: public ::libvariant::SchemaLoader { private: std::string ros_param_ns; std::string prefix; ros::NodeHandle nodeHandle; bool loadTypeSchema(std::string schema); public: - HosSchemaLoader(std::string ns = "/hos/types/repository", - std::string prefix = "hos:schema://") + HosSchemaLoader(std::string ns = "/hos/types/repository", std::string prefix = "hos:schema://") : ros_param_ns(ns), prefix(prefix), nodeHandle("~") {} virtual bool HandleMissing(const std::string &uri, LoaderError &error); }; -} + +} // namespace libvariant +} // namespace hos + #endif /* SRC_HOSSCHEMALOADER_H_ */ diff --git a/src/hos_libvariant/package.xml b/src/hos_libvariant/package.xml index dd1ffe74..c180d622 100644 --- a/src/hos_libvariant/package.xml +++ b/src/hos_libvariant/package.xml @@ -33,10 +33,12 @@ + roscpp + roscpp catkin diff --git a/src/hos_cosgi_devicerepository/src/HosSchemaLoader.cpp b/src/hos_libvariant/src/HosSchemaLoader/HosSchemaLoader.cpp similarity index 81% rename from src/hos_cosgi_devicerepository/src/HosSchemaLoader.cpp rename to src/hos_libvariant/src/HosSchemaLoader/HosSchemaLoader.cpp index 40c70360..626089bf 100644 --- a/src/hos_cosgi_devicerepository/src/HosSchemaLoader.cpp +++ b/src/hos_libvariant/src/HosSchemaLoader/HosSchemaLoader.cpp @@ -5,10 +5,12 @@ * Author: matzman */ -#include "HosSchemaLoader.h" +#include namespace hos { +namespace libvariant { + bool HosSchemaLoader::HandleMissing(const std::string &uri, LoaderError &error) { if (uri.compare(0, prefix.size(), prefix) == 0) { @@ -23,7 +25,7 @@ bool HosSchemaLoader::loadTypeSchema(std::string schema) { std::string pvalue; nodeHandle.getParam(pkey, pvalue); if (!pvalue.empty()) { - libvariant::Variant v = libvariant::Deserialize(pvalue, libvariant::SERIALIZE_JSON); + ::libvariant::Variant v = ::libvariant::Deserialize(pvalue, ::libvariant::SERIALIZE_JSON); if (v.IsMap()) { std::string sk = std::string(prefix).append(schema); AddSchema(sk, v); @@ -36,5 +38,7 @@ bool HosSchemaLoader::loadTypeSchema(std::string schema) { } } + +} } diff --git a/src/hos_libvariant/src/.hg/00changelog.i b/src/hos_libvariant/src/libvariant/.hg/00changelog.i similarity index 100% rename from src/hos_libvariant/src/.hg/00changelog.i rename to src/hos_libvariant/src/libvariant/.hg/00changelog.i diff --git a/src/hos_libvariant/src/.hg/branch b/src/hos_libvariant/src/libvariant/.hg/branch similarity index 100% rename from src/hos_libvariant/src/.hg/branch rename to src/hos_libvariant/src/libvariant/.hg/branch diff --git a/src/hos_libvariant/src/.hg/cache/branch2-served b/src/hos_libvariant/src/libvariant/.hg/cache/branch2-served similarity index 100% rename from src/hos_libvariant/src/.hg/cache/branch2-served rename to src/hos_libvariant/src/libvariant/.hg/cache/branch2-served diff --git a/src/hos_libvariant/src/.hg/dirstate b/src/hos_libvariant/src/libvariant/.hg/dirstate similarity index 100% rename from src/hos_libvariant/src/.hg/dirstate rename to src/hos_libvariant/src/libvariant/.hg/dirstate diff --git a/src/hos_libvariant/src/.hg/hgrc b/src/hos_libvariant/src/libvariant/.hg/hgrc similarity index 100% rename from src/hos_libvariant/src/.hg/hgrc rename to src/hos_libvariant/src/libvariant/.hg/hgrc diff --git a/src/hos_libvariant/src/.hg/requires b/src/hos_libvariant/src/libvariant/.hg/requires similarity index 100% rename from src/hos_libvariant/src/.hg/requires rename to src/hos_libvariant/src/libvariant/.hg/requires diff --git a/src/hos_libvariant/src/.hg/store/00changelog.i b/src/hos_libvariant/src/libvariant/.hg/store/00changelog.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/00changelog.i rename to src/hos_libvariant/src/libvariant/.hg/store/00changelog.i diff --git a/src/hos_libvariant/src/.hg/store/00manifest.i b/src/hos_libvariant/src/libvariant/.hg/store/00manifest.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/00manifest.i rename to src/hos_libvariant/src/libvariant/.hg/store/00manifest.i diff --git a/src/hos_libvariant/src/.hg/store/data/_c_make_lists.txt.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_c_make_lists.txt.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_c_make_lists.txt.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_c_make_lists.txt.i diff --git a/src/hos_libvariant/src/.hg/store/data/_config.h.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_config.h.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_config.h.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_config.h.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/_doxyfile.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_doxyfile.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_doxyfile.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_doxyfile.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/_l_i_c_e_n_s_e.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_l_i_c_e_n_s_e.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_l_i_c_e_n_s_e.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_l_i_c_e_n_s_e.i diff --git a/src/hos_libvariant/src/.hg/store/data/_lib_variant_build_tree_settings.cmake.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_build_tree_settings.cmake.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_lib_variant_build_tree_settings.cmake.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_build_tree_settings.cmake.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/_lib_variant_config.cmake.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_config.cmake.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_lib_variant_config.cmake.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_config.cmake.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/_lib_variant_config_version.cmake.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_config_version.cmake.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_lib_variant_config_version.cmake.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_lib_variant_config_version.cmake.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/_r_e_a_d_m_e.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_r_e_a_d_m_e.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_r_e_a_d_m_e.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_r_e_a_d_m_e.i diff --git a/src/hos_libvariant/src/.hg/store/data/_r_e_a_d_m_e.md.i b/src/hos_libvariant/src/libvariant/.hg/store/data/_r_e_a_d_m_e.md.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/_r_e_a_d_m_e.md.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/_r_e_a_d_m_e.md.i diff --git a/src/hos_libvariant/src/.hg/store/data/cmake/_modules/_find_lib_y_a_m_l.cmake.i b/src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_find_lib_y_a_m_l.cmake.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/cmake/_modules/_find_lib_y_a_m_l.cmake.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_find_lib_y_a_m_l.cmake.i diff --git a/src/hos_libvariant/src/.hg/store/data/cmake/_modules/_find_msg_pack.cmake.i b/src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_find_msg_pack.cmake.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/cmake/_modules/_find_msg_pack.cmake.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_find_msg_pack.cmake.i diff --git a/src/hos_libvariant/src/.hg/store/data/cmake/_modules/_make_t_b_z2.cmake.i b/src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_make_t_b_z2.cmake.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/cmake/_modules/_make_t_b_z2.cmake.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/cmake/_modules/_make_t_b_z2.cmake.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/_c_make_lists.txt.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/_c_make_lists.txt.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/_c_make_lists.txt.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/_c_make_lists.txt.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/_r_e_a_d_m_e.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/_r_e_a_d_m_e.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/_r_e_a_d_m_e.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/_r_e_a_d_m_e.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/arg__parse.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/arg__parse.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/arg__parse.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/arg__parse.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/convert.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/convert.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/convert.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/convert.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/example1.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/example1.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/example1.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/example1.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/example2.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/example2.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/example2.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/example2.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/list__example.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/list__example.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/list__example.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/list__example.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/map__example.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/map__example.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/map__example.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/map__example.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/examples/pretty__print.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/examples/pretty__print.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/examples/pretty__print.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/examples/pretty__print.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_arg_parse.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_arg_parse.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_arg_parse.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_arg_parse.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_blob.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_blob.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_blob.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_blob.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_emitter_output.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_emitter_output.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_emitter_output.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_emitter_output.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_exceptions.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_exceptions.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_exceptions.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_exceptions.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_extensions.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_extensions.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_extensions.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_extensions.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_guess_format.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_guess_format.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_guess_format.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_guess_format.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_parser_input.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_parser_input.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_parser_input.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_parser_input.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_path.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_path.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_path.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_path.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_payload.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_payload.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_payload.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_payload.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_schema.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_schema.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_schema.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_schema.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_schema_loader.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_schema_loader.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_schema_loader.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_schema_loader.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_shared_ptr.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_shared_ptr.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_shared_ptr.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_shared_ptr.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_variant.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_variant.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_variant_defines.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant_defines.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_variant_defines.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant_defines.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/include/_variant/_variant_internal.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant_internal.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/include/_variant/_variant_internal.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/include/_variant/_variant_internal.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i b/src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n___p_a_r_s_e_r___r_e_a_d_m_e.htm.i diff --git a/src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n__parser.c.i b/src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n__parser.c.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n__parser.c.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n__parser.c.i diff --git a/src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n__parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n__parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/lib/json/_j_s_o_n__parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/lib/json/_j_s_o_n__parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/libvariant.pc.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/libvariant.pc.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/libvariant.pc.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/libvariant.pc.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_arg_parse.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_arg_parse.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_arg_parse.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_arg_parse.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_base64.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_base64.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_base64.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_base64.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_base64.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_base64.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_base64.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_base64.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_blob.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_blob.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_blob.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_blob.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_blob_magic.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_blob_magic.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_blob_magic.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_blob_magic.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_bundle_hdr_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_bundle_hdr_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_c_make_lists.txt.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_c_make_lists.txt.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_c_make_lists.txt.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_c_make_lists.txt.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_emitter_output.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_emitter_output.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_emitter_output.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_emitter_output.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_event_buffer.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_event_buffer.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_event_buffer.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_event_buffer.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_event_buffer.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_event_buffer.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_event_buffer.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_event_buffer.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_exceptions.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_exceptions.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_exceptions.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_exceptions.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_extensions.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_extensions.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_extensions.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_extensions.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_guess_format.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_format.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_guess_format.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_format.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_guess_scalar.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_scalar.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_guess_scalar.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_scalar.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_guess_scalar.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_scalar.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_guess_scalar.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_guess_scalar.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_j_s_o_n_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_j_s_o_n_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_msg_pack_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_msg_pack_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_msg_pack_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_msg_pack_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_msg_pack_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_msg_pack_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_msg_pack_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_msg_pack_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_msg_pack_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_parse_bool.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_parse_bool.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_parse_bool.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_parse_bool.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_parse_bool.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_parse_bool.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_parse_bool.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_parse_bool.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_parser_input.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_parser_input.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_parser_input.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_parser_input.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_path.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_path.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_path.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_path.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_payload.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_payload.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_payload.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_payload.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_schema.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_schema.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_schema.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_schema.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_schema_loader.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_schema_loader.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_schema_loader.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_schema_loader.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_stack_trace.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_stack_trace.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_stack_trace.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_stack_trace.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_stack_trace.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_stack_trace.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_stack_trace.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_stack_trace.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_variant.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_variant.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_variant_emitting.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant_emitting.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_variant_emitting.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant_emitting.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_variant_parsing.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant_parsing.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_variant_parsing.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_variant_parsing.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_defs.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_defs.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_defs.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_defs.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_x_m_l_p_l_i_s_t_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_emitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_emitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_emitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_emitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_emitter.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_emitter.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_emitter.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_emitter.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_parser.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_parser.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/_y_a_m_l_parser.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/_y_a_m_l_parser.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/argparse-schema.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/argparse-schema.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/argparse-schema.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/argparse-schema.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/argparse-schema.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/argparse-schema.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/argparse-schema.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/argparse-schema.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/gen-argparse-schema.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/gen-argparse-schema.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/gen-argparse-schema.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/gen-argparse-schema.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/gen-json-schema.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/gen-json-schema.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/gen-json-schema.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/gen-json-schema.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/json-schema-v4.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/json-schema-v4.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/json-schema-v4.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/json-schema-v4.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/json-schema-v4.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/json-schema-v4.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/json-schema-v4.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/json-schema-v4.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/src/varsh.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/src/varsh.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/src/varsh.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/src/varsh.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/_c_make_lists.txt.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/_c_make_lists.txt.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/_c_make_lists.txt.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/_c_make_lists.txt.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/_test_assert.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/_test_assert.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/_test_assert.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/_test_assert.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/_test_common.h.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/_test_common.h.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/_test_common.h.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/_test_common.h.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/prof__msgpack.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/prof__msgpack.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/prof__msgpack.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/prof__msgpack.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/rand__test__json.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__json.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/rand__test__json.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__json.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/rand__test__msgpack.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__msgpack.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/rand__test__msgpack.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__msgpack.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/rand__test__xml.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__xml.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/rand__test__xml.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__xml.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/rand__test__yaml.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__yaml.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/rand__test__yaml.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/rand__test__yaml.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__argparse.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__argparse.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__argparse.sh.in.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse.sh.in.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__argparse.sh.in.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse.sh.in.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__argparse__merge.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse__merge.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__argparse__merge.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__argparse__merge.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__base64.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__base64.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__base64.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__base64.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__bundleemitter.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundleemitter.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__bundleemitter.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundleemitter.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__bundlehdr.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundlehdr.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__bundlehdr.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundlehdr.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__bundleparser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundleparser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__bundleparser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__bundleparser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__empty.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__empty.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__empty.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__empty.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__extensions.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__extensions.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__extensions.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__extensions.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__guess.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__guess.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__guess.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__guess.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__json__parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__json__parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__json__parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__json__parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__loadall.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__loadall.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__loadall.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__loadall.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__memoryoutput.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__memoryoutput.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__memoryoutput.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__memoryoutput.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__numerics.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__numerics.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__numerics.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__numerics.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__path.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__path.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__path.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__path.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__payload.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__payload.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__payload.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__payload.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__roundtrip.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__roundtrip.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__roundtrip.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__roundtrip.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/invalid-schema.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/invalid-schema.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/invalid-schema.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/invalid-schema.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/invalid__path.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/invalid__path.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/invalid__path.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/invalid__path.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/_r_e_a_d_m_e.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/_r_e_a_d_m_e.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/_r_e_a_d_m_e.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/_r_e_a_d_m_e.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/additional_properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/all_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/any_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/convert.py.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/convert.py.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/convert.py.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/convert.py.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/definitions.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/dependencies.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/enum.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/items.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/items.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/items.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/items.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_length.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/max_properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/maximum.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_length.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/min_properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/minimum.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/multiple_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/not.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/not.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/not.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/not.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/not.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/not.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/not.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/not.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/one_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/pattern_properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/ref.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/required.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/required.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/required.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/required.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/required.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/required.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/required.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/required.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/type.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/type.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/type.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/type.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/type.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/type.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/type.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/type.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/jsonschema-tests/unique_items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/negative-unique-items.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/negative-unique-items.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/negative-unique-items.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/negative-unique-items.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/recursion.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/recursion.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/recursion.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/recursion.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/sample-test.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/sample-test.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/sample-test.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/sample-test.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test-fail.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test-fail.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test-fail.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test-fail.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test-schema.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test-schema.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test-schema.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test-schema.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/simple-test.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/simple-test.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/test__resolveuri.json.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/test__resolveuri.json.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/test__resolveuri.json.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/test__resolveuri.json.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/01-type.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/01-type.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/01-type.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/01-type.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/02-enum.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/01-any-type/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/01-min-max.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/02-multiple_of.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/02-numeric/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/01-min-max-length.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/02-pattern.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/03-strings/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/01-min-max-length.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/02-uniqueitems.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/03-items-plain.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/04-items-tuple-typing.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/05-additionalitems.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/04-arrays/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/01-min-max-properties.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/02-required.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/03-properties.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/04-patternproperties.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/05-additionalproperties.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/06-dependencies.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/05-objects/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/01-all_of.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/02-any_of.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/03-one_of.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/04-not.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/06-combinations/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/04-ref.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.test.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.test.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.test.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.test.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.yaml.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.yaml.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.yaml.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/05-inline-addressing.yaml.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/07-ref/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/_makefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/_makefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/_makefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/_makefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/_r_e_a_d_m_e.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/_r_e_a_d_m_e.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/_r_e_a_d_m_e.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/_r_e_a_d_m_e.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/submakefile.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/submakefile.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__schema__data/tv4-tests/submakefile.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__schema__data/tv4-tests/submakefile.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__variant.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__variant.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__variant.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__variant.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__xml__parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__xml__parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__xml__parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__xml__parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/test/test__yaml__parser.cc.i b/src/hos_libvariant/src/libvariant/.hg/store/data/test/test__yaml__parser.cc.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/test/test__yaml__parser.cc.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/test/test__yaml__parser.cc.i diff --git a/src/hos_libvariant/src/.hg/store/data/~2ehgignore.i b/src/hos_libvariant/src/libvariant/.hg/store/data/~2ehgignore.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/~2ehgignore.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/~2ehgignore.i diff --git a/src/hos_libvariant/src/.hg/store/data/~2ehgtags.i b/src/hos_libvariant/src/libvariant/.hg/store/data/~2ehgtags.i similarity index 100% rename from src/hos_libvariant/src/.hg/store/data/~2ehgtags.i rename to src/hos_libvariant/src/libvariant/.hg/store/data/~2ehgtags.i diff --git a/src/hos_libvariant/src/.hg/store/fncache b/src/hos_libvariant/src/libvariant/.hg/store/fncache similarity index 100% rename from src/hos_libvariant/src/.hg/store/fncache rename to src/hos_libvariant/src/libvariant/.hg/store/fncache diff --git a/src/hos_libvariant/src/.hg/store/undo.phaseroots b/src/hos_libvariant/src/libvariant/.hg/store/phaseroots similarity index 100% rename from src/hos_libvariant/src/.hg/store/undo.phaseroots rename to src/hos_libvariant/src/libvariant/.hg/store/phaseroots diff --git a/src/hos_libvariant/src/.hg/store/undo b/src/hos_libvariant/src/libvariant/.hg/store/undo similarity index 100% rename from src/hos_libvariant/src/.hg/store/undo rename to src/hos_libvariant/src/libvariant/.hg/store/undo diff --git a/src/hos_libvariant/src/.hg/undo.bookmarks b/src/hos_libvariant/src/libvariant/.hg/store/undo.phaseroots similarity index 100% rename from src/hos_libvariant/src/.hg/undo.bookmarks rename to src/hos_libvariant/src/libvariant/.hg/store/undo.phaseroots diff --git a/src/hos_libvariant/src/.hg/undo.dirstate b/src/hos_libvariant/src/libvariant/.hg/undo.bookmarks similarity index 100% rename from src/hos_libvariant/src/.hg/undo.dirstate rename to src/hos_libvariant/src/libvariant/.hg/undo.bookmarks diff --git a/src/hos_libvariant/src/.hg/undo.branch b/src/hos_libvariant/src/libvariant/.hg/undo.branch similarity index 100% rename from src/hos_libvariant/src/.hg/undo.branch rename to src/hos_libvariant/src/libvariant/.hg/undo.branch diff --git a/src/hos_libvariant/src/.hg/undo.desc b/src/hos_libvariant/src/libvariant/.hg/undo.desc similarity index 100% rename from src/hos_libvariant/src/.hg/undo.desc rename to src/hos_libvariant/src/libvariant/.hg/undo.desc diff --git a/src/hos_libvariant/src/libvariant/.hg/undo.dirstate b/src/hos_libvariant/src/libvariant/.hg/undo.dirstate new file mode 100644 index 00000000..e69de29b diff --git a/src/hos_libvariant/src/.hgignore b/src/hos_libvariant/src/libvariant/.hgignore similarity index 100% rename from src/hos_libvariant/src/.hgignore rename to src/hos_libvariant/src/libvariant/.hgignore diff --git a/src/hos_libvariant/src/.hgtags b/src/hos_libvariant/src/libvariant/.hgtags similarity index 100% rename from src/hos_libvariant/src/.hgtags rename to src/hos_libvariant/src/libvariant/.hgtags diff --git a/src/hos_libvariant/src/CMakeLists.txt b/src/hos_libvariant/src/libvariant/CMakeLists.txt similarity index 100% rename from src/hos_libvariant/src/CMakeLists.txt rename to src/hos_libvariant/src/libvariant/CMakeLists.txt diff --git a/src/hos_libvariant/src/Config.h.in b/src/hos_libvariant/src/libvariant/Config.h.in similarity index 100% rename from src/hos_libvariant/src/Config.h.in rename to src/hos_libvariant/src/libvariant/Config.h.in diff --git a/src/hos_libvariant/src/Doxyfile.in b/src/hos_libvariant/src/libvariant/Doxyfile.in similarity index 100% rename from src/hos_libvariant/src/Doxyfile.in rename to src/hos_libvariant/src/libvariant/Doxyfile.in diff --git a/src/hos_libvariant/src/LICENSE b/src/hos_libvariant/src/libvariant/LICENSE similarity index 100% rename from src/hos_libvariant/src/LICENSE rename to src/hos_libvariant/src/libvariant/LICENSE diff --git a/src/hos_libvariant/src/LibVariantBuildTreeSettings.cmake.in b/src/hos_libvariant/src/libvariant/LibVariantBuildTreeSettings.cmake.in similarity index 100% rename from src/hos_libvariant/src/LibVariantBuildTreeSettings.cmake.in rename to src/hos_libvariant/src/libvariant/LibVariantBuildTreeSettings.cmake.in diff --git a/src/hos_libvariant/src/LibVariantConfig.cmake.in b/src/hos_libvariant/src/libvariant/LibVariantConfig.cmake.in similarity index 100% rename from src/hos_libvariant/src/LibVariantConfig.cmake.in rename to src/hos_libvariant/src/libvariant/LibVariantConfig.cmake.in diff --git a/src/hos_libvariant/src/LibVariantConfigVersion.cmake.in b/src/hos_libvariant/src/libvariant/LibVariantConfigVersion.cmake.in similarity index 100% rename from src/hos_libvariant/src/LibVariantConfigVersion.cmake.in rename to src/hos_libvariant/src/libvariant/LibVariantConfigVersion.cmake.in diff --git a/src/hos_libvariant/src/README.md b/src/hos_libvariant/src/libvariant/README.md similarity index 100% rename from src/hos_libvariant/src/README.md rename to src/hos_libvariant/src/libvariant/README.md diff --git a/src/hos_libvariant/src/cmake/Modules/FindLibYAML.cmake b/src/hos_libvariant/src/libvariant/cmake/Modules/FindLibYAML.cmake similarity index 100% rename from src/hos_libvariant/src/cmake/Modules/FindLibYAML.cmake rename to src/hos_libvariant/src/libvariant/cmake/Modules/FindLibYAML.cmake diff --git a/src/hos_libvariant/src/cmake/Modules/FindMsgPack.cmake b/src/hos_libvariant/src/libvariant/cmake/Modules/FindMsgPack.cmake similarity index 100% rename from src/hos_libvariant/src/cmake/Modules/FindMsgPack.cmake rename to src/hos_libvariant/src/libvariant/cmake/Modules/FindMsgPack.cmake diff --git a/src/hos_libvariant/src/cmake/Modules/MakeTBZ2.cmake b/src/hos_libvariant/src/libvariant/cmake/Modules/MakeTBZ2.cmake similarity index 100% rename from src/hos_libvariant/src/cmake/Modules/MakeTBZ2.cmake rename to src/hos_libvariant/src/libvariant/cmake/Modules/MakeTBZ2.cmake diff --git a/src/hos_libvariant/src/examples/CMakeLists.txt b/src/hos_libvariant/src/libvariant/examples/CMakeLists.txt similarity index 100% rename from src/hos_libvariant/src/examples/CMakeLists.txt rename to src/hos_libvariant/src/libvariant/examples/CMakeLists.txt diff --git a/src/hos_libvariant/src/examples/README b/src/hos_libvariant/src/libvariant/examples/README similarity index 100% rename from src/hos_libvariant/src/examples/README rename to src/hos_libvariant/src/libvariant/examples/README diff --git a/src/hos_libvariant/src/examples/arg_parse.cc b/src/hos_libvariant/src/libvariant/examples/arg_parse.cc similarity index 95% rename from src/hos_libvariant/src/examples/arg_parse.cc rename to src/hos_libvariant/src/libvariant/examples/arg_parse.cc index 7ffe278d..a69ac7e1 100644 --- a/src/hos_libvariant/src/examples/arg_parse.cc +++ b/src/hos_libvariant/src/libvariant/examples/arg_parse.cc @@ -3,10 +3,10 @@ * \brief */ -#include -#include -#include #include +#include "../../libvariant/include/Variant/ArgParse.h" +#include "../../libvariant/include/Variant/Schema.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/examples/convert.cc b/src/hos_libvariant/src/libvariant/examples/convert.cc similarity index 97% rename from src/hos_libvariant/src/examples/convert.cc rename to src/hos_libvariant/src/libvariant/examples/convert.cc index 189b0caa..6278163e 100644 --- a/src/hos_libvariant/src/examples/convert.cc +++ b/src/hos_libvariant/src/libvariant/examples/convert.cc @@ -4,10 +4,10 @@ * the json, yaml or xml formats and then write out * any of those formats. */ -#include #include #include #include +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/examples/example1.cc b/src/hos_libvariant/src/libvariant/examples/example1.cc similarity index 93% rename from src/hos_libvariant/src/examples/example1.cc rename to src/hos_libvariant/src/libvariant/examples/example1.cc index 625e2aa1..4e384b5a 100644 --- a/src/hos_libvariant/src/examples/example1.cc +++ b/src/hos_libvariant/src/libvariant/examples/example1.cc @@ -3,8 +3,8 @@ * \brief */ -#include #include +#include "../../libvariant/include/Variant/Variant.h" // Import Variant from libvariant using libvariant::Variant; diff --git a/src/hos_libvariant/src/examples/example2.cc b/src/hos_libvariant/src/libvariant/examples/example2.cc similarity index 95% rename from src/hos_libvariant/src/examples/example2.cc rename to src/hos_libvariant/src/libvariant/examples/example2.cc index 8e733e91..2d6d60ca 100644 --- a/src/hos_libvariant/src/examples/example2.cc +++ b/src/hos_libvariant/src/libvariant/examples/example2.cc @@ -3,8 +3,8 @@ * \brief */ -#include #include +#include "../../libvariant/include/Variant/Variant.h" using libvariant::Variant; diff --git a/src/hos_libvariant/src/examples/list_example.cc b/src/hos_libvariant/src/libvariant/examples/list_example.cc similarity index 92% rename from src/hos_libvariant/src/examples/list_example.cc rename to src/hos_libvariant/src/libvariant/examples/list_example.cc index 17dfd7a5..0b3f3a90 100644 --- a/src/hos_libvariant/src/examples/list_example.cc +++ b/src/hos_libvariant/src/libvariant/examples/list_example.cc @@ -2,8 +2,9 @@ * \author John Bridgman * \brief */ -#include #include + +#include "../../libvariant/include/Variant/Variant.h" using libvariant::Variant; int main(int argc, char **argv) { diff --git a/src/hos_libvariant/src/examples/map_example.cc b/src/hos_libvariant/src/libvariant/examples/map_example.cc similarity index 95% rename from src/hos_libvariant/src/examples/map_example.cc rename to src/hos_libvariant/src/libvariant/examples/map_example.cc index b43eb86d..0c6fb374 100644 --- a/src/hos_libvariant/src/examples/map_example.cc +++ b/src/hos_libvariant/src/libvariant/examples/map_example.cc @@ -2,9 +2,10 @@ * \author John Bridgman * \brief */ -#include #include #include + +#include "../../libvariant/include/Variant/Variant.h" using libvariant::Variant; int main(int argc, char **argv) { diff --git a/src/hos_libvariant/src/examples/pretty_print.cc b/src/hos_libvariant/src/libvariant/examples/pretty_print.cc similarity index 95% rename from src/hos_libvariant/src/examples/pretty_print.cc rename to src/hos_libvariant/src/libvariant/examples/pretty_print.cc index 388e8436..083f045b 100644 --- a/src/hos_libvariant/src/examples/pretty_print.cc +++ b/src/hos_libvariant/src/libvariant/examples/pretty_print.cc @@ -3,8 +3,8 @@ * \brief */ #include -#include #include +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/include/Variant/ArgParse.h b/src/hos_libvariant/src/libvariant/include/Variant/ArgParse.h similarity index 99% rename from src/hos_libvariant/src/include/Variant/ArgParse.h rename to src/hos_libvariant/src/libvariant/include/Variant/ArgParse.h index 97e0a17b..307d3ab7 100644 --- a/src/hos_libvariant/src/include/Variant/ArgParse.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/ArgParse.h @@ -4,8 +4,9 @@ */ #ifndef VARIANT_ARGPARSER_H #define VARIANT_ARGPARSER_H + #pragma once -#include +#include "../../../libvariant/include/Variant/Variant.h" #include #include namespace libvariant { diff --git a/src/hos_libvariant/src/include/Variant/Blob.h b/src/hos_libvariant/src/libvariant/include/Variant/Blob.h similarity index 97% rename from src/hos_libvariant/src/include/Variant/Blob.h rename to src/hos_libvariant/src/libvariant/include/Variant/Blob.h index 11d7bf65..985fce3c 100644 --- a/src/hos_libvariant/src/include/Variant/Blob.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Blob.h @@ -4,8 +4,9 @@ */ #ifndef VARIANT_BLOB_H #define VARIANT_BLOB_H + #pragma once -#include +#include "../../../libvariant/include/Variant/SharedPtr.h" #include #include diff --git a/src/hos_libvariant/src/include/Variant/Emitter.h b/src/hos_libvariant/src/libvariant/include/Variant/Emitter.h similarity index 97% rename from src/hos_libvariant/src/include/Variant/Emitter.h rename to src/hos_libvariant/src/libvariant/include/Variant/Emitter.h index adff3528..619a279b 100644 --- a/src/hos_libvariant/src/include/Variant/Emitter.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Emitter.h @@ -20,14 +20,15 @@ */ #ifndef VARIANT_EMITTER_H #define VARIANT_EMITTER_H + #pragma once #include #include #include #include -#include -#include -#include +#include "../../../libvariant/include/Variant/Variant.h" +#include "../../../libvariant/include/Variant/Blob.h" +#include "../../../libvariant/include/Variant/EmitterOutput.h" #include #include diff --git a/src/hos_libvariant/src/include/Variant/EmitterOutput.h b/src/hos_libvariant/src/libvariant/include/Variant/EmitterOutput.h similarity index 100% rename from src/hos_libvariant/src/include/Variant/EmitterOutput.h rename to src/hos_libvariant/src/libvariant/include/Variant/EmitterOutput.h diff --git a/src/hos_libvariant/src/include/Variant/Exceptions.h b/src/hos_libvariant/src/libvariant/include/Variant/Exceptions.h similarity index 98% rename from src/hos_libvariant/src/include/Variant/Exceptions.h rename to src/hos_libvariant/src/libvariant/include/Variant/Exceptions.h index da59c286..baf54abe 100644 --- a/src/hos_libvariant/src/include/Variant/Exceptions.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Exceptions.h @@ -20,10 +20,11 @@ */ #ifndef VARIANT_EXCEPTIONS_H #define VARIANT_EXCEPTIONS_H -#include #include #include #include + +#include "../../../libvariant/include/Variant/VariantDefines.h" namespace libvariant { /// \brief Exception thrown when a key does not exist. diff --git a/src/hos_libvariant/src/include/Variant/Extensions.h b/src/hos_libvariant/src/libvariant/include/Variant/Extensions.h similarity index 98% rename from src/hos_libvariant/src/include/Variant/Extensions.h rename to src/hos_libvariant/src/libvariant/include/Variant/Extensions.h index 83e2a726..c2ca2584 100644 --- a/src/hos_libvariant/src/include/Variant/Extensions.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Extensions.h @@ -22,7 +22,7 @@ #ifndef VARIANT_EXTENSIONS_H #define VARIANT_EXTENSIONS_H -#include +#include "../../../libvariant/include/Variant/Variant.h" namespace libvariant { diff --git a/src/hos_libvariant/src/include/Variant/GuessFormat.h b/src/hos_libvariant/src/libvariant/include/Variant/GuessFormat.h similarity index 80% rename from src/hos_libvariant/src/include/Variant/GuessFormat.h rename to src/hos_libvariant/src/libvariant/include/Variant/GuessFormat.h index aba94ea9..0346e80a 100644 --- a/src/hos_libvariant/src/include/Variant/GuessFormat.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/GuessFormat.h @@ -4,9 +4,10 @@ */ #ifndef VARIANT_GUESSFORMAT_H #define VARIANT_GUESSFORMAT_H + #pragma once -#include -#include +#include "../../../libvariant/include/Variant/Variant.h" +#include "../../../libvariant/include/Variant/Parser.h" namespace libvariant { /// diff --git a/src/hos_libvariant/src/include/Variant/Parser.h b/src/hos_libvariant/src/libvariant/include/Variant/Parser.h similarity index 97% rename from src/hos_libvariant/src/include/Variant/Parser.h rename to src/hos_libvariant/src/libvariant/include/Variant/Parser.h index 1c6478a3..8309eabd 100644 --- a/src/hos_libvariant/src/include/Variant/Parser.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Parser.h @@ -4,12 +4,13 @@ */ #ifndef VARIANT_PARSER_H #define VARIANT_PARSER_H + #pragma once #include #include -#include -#include -#include +#include "../../../libvariant/include/Variant/Blob.h" +#include "../../../libvariant/include/Variant/ParserInput.h" +#include "../../../libvariant/include/Variant/Variant.h" #include namespace libvariant { diff --git a/src/hos_libvariant/src/include/Variant/ParserInput.h b/src/hos_libvariant/src/libvariant/include/Variant/ParserInput.h similarity index 100% rename from src/hos_libvariant/src/include/Variant/ParserInput.h rename to src/hos_libvariant/src/libvariant/include/Variant/ParserInput.h diff --git a/src/hos_libvariant/src/include/Variant/Path.h b/src/hos_libvariant/src/libvariant/include/Variant/Path.h similarity index 98% rename from src/hos_libvariant/src/include/Variant/Path.h rename to src/hos_libvariant/src/libvariant/include/Variant/Path.h index 6c38c5c3..15c059fe 100644 --- a/src/hos_libvariant/src/include/Variant/Path.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Path.h @@ -20,10 +20,11 @@ */ #ifndef VARIANT_PATH_H #define VARIANT_PATH_H + #pragma once #include #include -#include +#include "../../../libvariant/include/Variant/Exceptions.h" namespace libvariant { // A simple xpath like path functionality for Variant diff --git a/src/hos_libvariant/src/include/Variant/Payload.h b/src/hos_libvariant/src/libvariant/include/Variant/Payload.h similarity index 97% rename from src/hos_libvariant/src/include/Variant/Payload.h rename to src/hos_libvariant/src/libvariant/include/Variant/Payload.h index bcb213b5..104dffc8 100644 --- a/src/hos_libvariant/src/include/Variant/Payload.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Payload.h @@ -20,10 +20,11 @@ */ #ifndef VARIANT_PAYLOAD_H #define VARIANT_PAYLOAD_H + #pragma once -#include -#include -#include +#include "../../../libvariant/include/Variant/Variant.h" +#include "../../../libvariant/include/Variant/Emitter.h" +#include "../../../libvariant/include/Variant/Parser.h" namespace libvariant { // Serialize and Deserialize a header, null byte, and a binary payload diff --git a/src/hos_libvariant/src/include/Variant/Schema.h b/src/hos_libvariant/src/libvariant/include/Variant/Schema.h similarity index 99% rename from src/hos_libvariant/src/include/Variant/Schema.h rename to src/hos_libvariant/src/libvariant/include/Variant/Schema.h index fd0d3d39..2626087d 100644 --- a/src/hos_libvariant/src/include/Variant/Schema.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Schema.h @@ -23,8 +23,9 @@ */ #ifndef VARIANT_SCHEMA_H #define VARIANT_SCHEMA_H + #pragma once -#include +#include "../../../libvariant/include/Variant/Variant.h" #include #include #include diff --git a/src/hos_libvariant/src/include/Variant/SchemaLoader.h b/src/hos_libvariant/src/libvariant/include/Variant/SchemaLoader.h similarity index 97% rename from src/hos_libvariant/src/include/Variant/SchemaLoader.h rename to src/hos_libvariant/src/libvariant/include/Variant/SchemaLoader.h index 54dfe55a..e4944279 100644 --- a/src/hos_libvariant/src/include/Variant/SchemaLoader.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/SchemaLoader.h @@ -20,9 +20,10 @@ */ #ifndef VARIANT_SCHEMALOADER_H #define VARIANT_SCHEMALOADER_H + #pragma once -#include +#include "../../../libvariant/include/Variant/Schema.h" namespace libvariant { diff --git a/src/hos_libvariant/src/include/Variant/SharedPtr.h b/src/hos_libvariant/src/libvariant/include/Variant/SharedPtr.h similarity index 100% rename from src/hos_libvariant/src/include/Variant/SharedPtr.h rename to src/hos_libvariant/src/libvariant/include/Variant/SharedPtr.h diff --git a/src/hos_libvariant/src/include/Variant/Variant.h b/src/hos_libvariant/src/libvariant/include/Variant/Variant.h similarity index 99% rename from src/hos_libvariant/src/include/Variant/Variant.h rename to src/hos_libvariant/src/libvariant/include/Variant/Variant.h index a01d2380..136506eb 100644 --- a/src/hos_libvariant/src/include/Variant/Variant.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/Variant.h @@ -24,11 +24,12 @@ #ifndef VARIANT_VARIANT_H #define VARIANT_VARIANT_H + #pragma once -#include -#include -#include -#include +#include "../../../libvariant/include/Variant/Blob.h" +#include "../../../libvariant/include/Variant/SharedPtr.h" +#include "../../../libvariant/include/Variant/Exceptions.h" +#include "../../../libvariant/include/Variant/VariantInternal.h" #include #include #include diff --git a/src/hos_libvariant/src/include/Variant/VariantDefines.h b/src/hos_libvariant/src/libvariant/include/Variant/VariantDefines.h similarity index 100% rename from src/hos_libvariant/src/include/Variant/VariantDefines.h rename to src/hos_libvariant/src/libvariant/include/Variant/VariantDefines.h diff --git a/src/hos_libvariant/src/include/Variant/VariantInternal.h b/src/hos_libvariant/src/libvariant/include/Variant/VariantInternal.h similarity index 90% rename from src/hos_libvariant/src/include/Variant/VariantInternal.h rename to src/hos_libvariant/src/libvariant/include/Variant/VariantInternal.h index 5d9ed0f3..9e786302 100644 --- a/src/hos_libvariant/src/include/Variant/VariantInternal.h +++ b/src/hos_libvariant/src/libvariant/include/Variant/VariantInternal.h @@ -20,14 +20,15 @@ */ #ifndef VARIANT_BASE_H #define VARIANT_BASE_H -#include -#include -#include -#include #include #include #include #include + +#include "../../../libvariant/include/Variant/Blob.h" +#include "../../../libvariant/include/Variant/Path.h" +#include "../../../libvariant/include/Variant/SharedPtr.h" +#include "../../../libvariant/include/Variant/VariantDefines.h" namespace libvariant { struct RefTag {}; diff --git a/src/hos_libvariant/src/lib/json/JSON_PARSER_README.htm b/src/hos_libvariant/src/libvariant/lib/json/JSON_PARSER_README.htm similarity index 100% rename from src/hos_libvariant/src/lib/json/JSON_PARSER_README.htm rename to src/hos_libvariant/src/libvariant/lib/json/JSON_PARSER_README.htm diff --git a/src/hos_libvariant/src/lib/json/JSON_parser.c b/src/hos_libvariant/src/libvariant/lib/json/JSON_parser.c similarity index 99% rename from src/hos_libvariant/src/lib/json/JSON_parser.c rename to src/hos_libvariant/src/libvariant/lib/json/JSON_parser.c index 393b3fcd..b97423d0 100644 --- a/src/hos_libvariant/src/lib/json/JSON_parser.c +++ b/src/hos_libvariant/src/libvariant/lib/json/JSON_parser.c @@ -56,6 +56,8 @@ SOFTWARE. +#include "../../../libvariant/lib/json/JSON_parser.h" + #include #include #include @@ -65,7 +67,6 @@ SOFTWARE. #include #include -#include "JSON_parser.h" #ifdef _MSC_VER # if _MSC_VER >= 1400 /* Visual Studio 2005 and up */ diff --git a/src/hos_libvariant/src/lib/json/JSON_parser.h b/src/hos_libvariant/src/libvariant/lib/json/JSON_parser.h similarity index 100% rename from src/hos_libvariant/src/lib/json/JSON_parser.h rename to src/hos_libvariant/src/libvariant/lib/json/JSON_parser.h diff --git a/src/hos_libvariant/src/libvariant.pc.in b/src/hos_libvariant/src/libvariant/libvariant.pc.in similarity index 100% rename from src/hos_libvariant/src/libvariant.pc.in rename to src/hos_libvariant/src/libvariant/libvariant.pc.in diff --git a/src/hos_libvariant/src/src/ArgParse.cc b/src/hos_libvariant/src/libvariant/src/ArgParse.cc similarity index 99% rename from src/hos_libvariant/src/src/ArgParse.cc rename to src/hos_libvariant/src/libvariant/src/ArgParse.cc index 1b8235a4..3bfd4c59 100644 --- a/src/hos_libvariant/src/src/ArgParse.cc +++ b/src/hos_libvariant/src/libvariant/src/ArgParse.cc @@ -3,10 +3,8 @@ * \brief */ -#include -#include -#include -#include +#include "../../libvariant/include/Variant/ArgParse.h" + #include #include #include @@ -20,8 +18,12 @@ #include #include #include -#include "GuessScalar.h" -#include "ParseBool.h" + +#include "../../libvariant/include/Variant/Extensions.h" +#include "../../libvariant/include/Variant/Path.h" +#include "../../libvariant/include/Variant/Schema.h" +#include "../../libvariant/src/GuessScalar.h" +#include "../../libvariant/src/ParseBool.h" #if 0 #define DBPRINT(x) std::cout << x diff --git a/src/hos_libvariant/src/src/Base64.cc b/src/hos_libvariant/src/libvariant/src/Base64.cc similarity index 99% rename from src/hos_libvariant/src/src/Base64.cc rename to src/hos_libvariant/src/libvariant/src/Base64.cc index 99ccc50a..edf834fb 100644 --- a/src/hos_libvariant/src/src/Base64.cc +++ b/src/hos_libvariant/src/libvariant/src/Base64.cc @@ -2,7 +2,7 @@ * \author John Bridgman * \brief */ -#include "Base64.h" +#include "../../libvariant/src/Base64.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/Base64.h b/src/hos_libvariant/src/libvariant/src/Base64.h similarity index 100% rename from src/hos_libvariant/src/src/Base64.h rename to src/hos_libvariant/src/libvariant/src/Base64.h diff --git a/src/hos_libvariant/src/src/Blob.cc b/src/hos_libvariant/src/libvariant/src/Blob.cc similarity index 98% rename from src/hos_libvariant/src/src/Blob.cc rename to src/hos_libvariant/src/libvariant/src/Blob.cc index 3e12d552..6052d133 100644 --- a/src/hos_libvariant/src/src/Blob.cc +++ b/src/hos_libvariant/src/libvariant/src/Blob.cc @@ -2,7 +2,8 @@ * \author John Bridgman * \brief */ -#include +#include "../../libvariant/include/Variant/Blob.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/BlobMagic.h b/src/hos_libvariant/src/libvariant/src/BlobMagic.h similarity index 100% rename from src/hos_libvariant/src/src/BlobMagic.h rename to src/hos_libvariant/src/libvariant/src/BlobMagic.h diff --git a/src/hos_libvariant/src/src/BundleHdrEmitter.cc b/src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.cc similarity index 98% rename from src/hos_libvariant/src/src/BundleHdrEmitter.cc rename to src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.cc index d7db891f..44f477e1 100644 --- a/src/hos_libvariant/src/src/BundleHdrEmitter.cc +++ b/src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.cc @@ -2,7 +2,8 @@ * \author John Bridgman * \brief */ -#include "BundleHdrEmitter.h" +#include "../../libvariant/src/BundleHdrEmitter.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/BundleHdrEmitter.h b/src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.h similarity index 95% rename from src/hos_libvariant/src/src/BundleHdrEmitter.h rename to src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.h index 04b1a2b2..10d45195 100644 --- a/src/hos_libvariant/src/src/BundleHdrEmitter.h +++ b/src/hos_libvariant/src/libvariant/src/BundleHdrEmitter.h @@ -4,9 +4,10 @@ */ #ifndef VARIANT_BUNDLEHDREMITTER_H #define VARIANT_BUNDLEHDREMITTER_H + #pragma once -#include -#include +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/EmitterOutput.h" #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/BundleHdrParser.cc b/src/hos_libvariant/src/libvariant/src/BundleHdrParser.cc similarity index 96% rename from src/hos_libvariant/src/src/BundleHdrParser.cc rename to src/hos_libvariant/src/libvariant/src/BundleHdrParser.cc index 60304495..cff8144a 100644 --- a/src/hos_libvariant/src/src/BundleHdrParser.cc +++ b/src/hos_libvariant/src/libvariant/src/BundleHdrParser.cc @@ -2,13 +2,15 @@ * \author John Bridgman * \brief A parser for the Bundle header. */ -#include "BundleHdrParser.h" -#include +#include "../../libvariant/src/BundleHdrParser.h" + #include #include #include #include -#include "GuessScalar.h" + +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/src/GuessScalar.h" #define BUNDLE_VERSION_KEY "bundle.version" diff --git a/src/hos_libvariant/src/src/BundleHdrParser.h b/src/hos_libvariant/src/libvariant/src/BundleHdrParser.h similarity index 91% rename from src/hos_libvariant/src/src/BundleHdrParser.h rename to src/hos_libvariant/src/libvariant/src/BundleHdrParser.h index f6bf3310..afae6eef 100644 --- a/src/hos_libvariant/src/src/BundleHdrParser.h +++ b/src/hos_libvariant/src/libvariant/src/BundleHdrParser.h @@ -4,9 +4,10 @@ */ #ifndef VARIANT_BUNDLEHDRPARSER_H #define VARIANT_BUNDLEHDRPARSER_H + #pragma once -#include -#include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/SharedPtr.h" #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/CMakeLists.txt b/src/hos_libvariant/src/libvariant/src/CMakeLists.txt similarity index 100% rename from src/hos_libvariant/src/src/CMakeLists.txt rename to src/hos_libvariant/src/libvariant/src/CMakeLists.txt diff --git a/src/hos_libvariant/src/src/Emitter.cc b/src/hos_libvariant/src/libvariant/src/Emitter.cc similarity index 93% rename from src/hos_libvariant/src/src/Emitter.cc rename to src/hos_libvariant/src/libvariant/src/Emitter.cc index 691d0b3b..8026faed 100644 --- a/src/hos_libvariant/src/src/Emitter.cc +++ b/src/hos_libvariant/src/libvariant/src/Emitter.cc @@ -18,19 +18,20 @@ * \author John Bridgman * \brief */ -#include -#include "JSONEmitter.h" +#include "../../libvariant/include/Variant/Emitter.h" + +#include "../../libvariant/src/JSONEmitter.h" #ifdef ENABLE_YAML -#include "YAMLEmitter.h" +#include "../../libvariant/src/YAMLEmitter.h" #endif #ifdef ENABLE_XML -#include "XMLPLISTEmitter.h" +#include "../../libvariant/src/XMLPLISTEmitter.h" #endif #ifdef ENABLE_MSGPACK -#include "MsgPackEmitter.h" +#include "../../libvariant/src/MsgPackEmitter.h" #endif -#include "BundleHdrEmitter.h" -#include +#include "../../libvariant/src/BundleHdrEmitter.h" +#include "../../libvariant/include/Variant/EmitterOutput.h" namespace libvariant { EmitterImpl::~EmitterImpl() {} diff --git a/src/hos_libvariant/src/src/EmitterOutput.cc b/src/hos_libvariant/src/libvariant/src/EmitterOutput.cc similarity index 97% rename from src/hos_libvariant/src/src/EmitterOutput.cc rename to src/hos_libvariant/src/libvariant/src/EmitterOutput.cc index 5645c9d1..422d3f2b 100644 --- a/src/hos_libvariant/src/src/EmitterOutput.cc +++ b/src/hos_libvariant/src/libvariant/src/EmitterOutput.cc @@ -19,7 +19,8 @@ * \brief */ -#include +#include "../../libvariant/include/Variant/EmitterOutput.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/EventBuffer.cc b/src/hos_libvariant/src/libvariant/src/EventBuffer.cc similarity index 99% rename from src/hos_libvariant/src/src/EventBuffer.cc rename to src/hos_libvariant/src/libvariant/src/EventBuffer.cc index 49503c18..fc1d0371 100644 --- a/src/hos_libvariant/src/src/EventBuffer.cc +++ b/src/hos_libvariant/src/libvariant/src/EventBuffer.cc @@ -3,7 +3,8 @@ * \brief */ -#include "EventBuffer.h" +#include "../../libvariant/src/EventBuffer.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/EventBuffer.h b/src/hos_libvariant/src/libvariant/src/EventBuffer.h similarity index 98% rename from src/hos_libvariant/src/src/EventBuffer.h rename to src/hos_libvariant/src/libvariant/src/EventBuffer.h index b38a4477..45981b97 100644 --- a/src/hos_libvariant/src/src/EventBuffer.h +++ b/src/hos_libvariant/src/libvariant/src/EventBuffer.h @@ -4,9 +4,10 @@ */ #ifndef VARIANT_EVENTBUFFER_H #define VARIANT_EVENTBUFFER_H + #pragma once -#include -#include +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Parser.h" #include #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/Exceptions.cc b/src/hos_libvariant/src/libvariant/src/Exceptions.cc similarity index 98% rename from src/hos_libvariant/src/src/Exceptions.cc rename to src/hos_libvariant/src/libvariant/src/Exceptions.cc index 2ffe4c25..9b04b072 100644 --- a/src/hos_libvariant/src/src/Exceptions.cc +++ b/src/hos_libvariant/src/libvariant/src/Exceptions.cc @@ -18,9 +18,11 @@ * \author John Bridgman * \brief */ -#include +#include "../../libvariant/include/Variant/Exceptions.h" + #include -#include "StackTrace.h" + +#include "../../libvariant/src/StackTrace.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/Extensions.cc b/src/hos_libvariant/src/libvariant/src/Extensions.cc similarity index 99% rename from src/hos_libvariant/src/src/Extensions.cc rename to src/hos_libvariant/src/libvariant/src/Extensions.cc index 35eb6a1d..e4cffce2 100644 --- a/src/hos_libvariant/src/src/Extensions.cc +++ b/src/hos_libvariant/src/libvariant/src/Extensions.cc @@ -19,14 +19,15 @@ * \brief Useful extension functions for Variants */ +#include "../../libvariant/include/Variant/Extensions.h" + #include #include -#include -#include -#include #include #include #include +#include "../../libvariant/include/Variant/Path.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace std; diff --git a/src/hos_libvariant/src/src/GuessFormat.cc b/src/hos_libvariant/src/libvariant/src/GuessFormat.cc similarity index 95% rename from src/hos_libvariant/src/src/GuessFormat.cc rename to src/hos_libvariant/src/libvariant/src/GuessFormat.cc index d37734ea..12306bbb 100644 --- a/src/hos_libvariant/src/src/GuessFormat.cc +++ b/src/hos_libvariant/src/libvariant/src/GuessFormat.cc @@ -2,7 +2,8 @@ * \author John Bridgman * \brief */ -#include +#include "../../libvariant/include/Variant/GuessFormat.h" + #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/GuessScalar.cc b/src/hos_libvariant/src/libvariant/src/GuessScalar.cc similarity index 98% rename from src/hos_libvariant/src/src/GuessScalar.cc rename to src/hos_libvariant/src/libvariant/src/GuessScalar.cc index 5094271a..8c01516a 100644 --- a/src/hos_libvariant/src/src/GuessScalar.cc +++ b/src/hos_libvariant/src/libvariant/src/GuessScalar.cc @@ -2,7 +2,8 @@ * \author John Bridgman * \brief */ -#include "GuessScalar.h" +#include "../../libvariant/src/GuessScalar.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/GuessScalar.h b/src/hos_libvariant/src/libvariant/src/GuessScalar.h similarity index 86% rename from src/hos_libvariant/src/src/GuessScalar.h rename to src/hos_libvariant/src/libvariant/src/GuessScalar.h index d610451e..2c1f3412 100644 --- a/src/hos_libvariant/src/src/GuessScalar.h +++ b/src/hos_libvariant/src/libvariant/src/GuessScalar.h @@ -4,8 +4,9 @@ */ #ifndef VARIANT_GUESSSCALAR_H #define VARIANT_GUESSSCALAR_H + #pragma once -#include +#include "../../libvariant/include/Variant/Parser.h" namespace libvariant { void GuessScalar(const char *value, unsigned length, const char *anchor, const char *tag, ParserImpl *p, ParserActions *action); diff --git a/src/hos_libvariant/src/src/JSONEmitter.cc b/src/hos_libvariant/src/libvariant/src/JSONEmitter.cc similarity index 97% rename from src/hos_libvariant/src/src/JSONEmitter.cc rename to src/hos_libvariant/src/libvariant/src/JSONEmitter.cc index 9389e32b..78ce6e23 100644 --- a/src/hos_libvariant/src/src/JSONEmitter.cc +++ b/src/hos_libvariant/src/libvariant/src/JSONEmitter.cc @@ -15,8 +15,8 @@ // World Wide Web at http://www.fsf.org. //============================================================================= -#include "JSONEmitter.h" -#include +#include "../../libvariant/src/JSONEmitter.h" + #include #include #include @@ -25,8 +25,10 @@ #include #include #include -#include "Base64.h" -#include "BlobMagic.h" + +#include "../../libvariant/include/Variant/EmitterOutput.h" +#include "../../libvariant/src/Base64.h" +#include "../../libvariant/src/BlobMagic.h" using namespace std; diff --git a/src/hos_libvariant/src/src/JSONEmitter.h b/src/hos_libvariant/src/libvariant/src/JSONEmitter.h similarity index 98% rename from src/hos_libvariant/src/src/JSONEmitter.h rename to src/hos_libvariant/src/libvariant/src/JSONEmitter.h index f5a2fb14..d9685b85 100644 --- a/src/hos_libvariant/src/src/JSONEmitter.h +++ b/src/hos_libvariant/src/libvariant/src/JSONEmitter.h @@ -20,12 +20,13 @@ */ #ifndef VARIANT_JSONEMITTER_H #define VARIANT_JSONEMITTER_H + #pragma once #include #include #include #include -#include +#include "../../libvariant/include/Variant/Emitter.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/JSONParser.cc b/src/hos_libvariant/src/libvariant/src/JSONParser.cc similarity index 98% rename from src/hos_libvariant/src/src/JSONParser.cc rename to src/hos_libvariant/src/libvariant/src/JSONParser.cc index 9d385a83..54d3fdd2 100644 --- a/src/hos_libvariant/src/src/JSONParser.cc +++ b/src/hos_libvariant/src/libvariant/src/JSONParser.cc @@ -17,8 +17,9 @@ /** \file * \author John Bridgman */ -#include "JSONParser.h" -#include "BlobMagic.h" +#include "../../libvariant/src/JSONParser.h" + +#include "../../libvariant/src/BlobMagic.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/JSONParser.h b/src/hos_libvariant/src/libvariant/src/JSONParser.h similarity index 89% rename from src/hos_libvariant/src/src/JSONParser.h rename to src/hos_libvariant/src/libvariant/src/JSONParser.h index 8fba1a5d..07ce2582 100644 --- a/src/hos_libvariant/src/src/JSONParser.h +++ b/src/hos_libvariant/src/libvariant/src/JSONParser.h @@ -22,17 +22,18 @@ */ #ifndef JSON_PARSER_HPP #define JSON_PARSER_HPP + #pragma once -#include "Base64.h" +#include "../../libvariant/src/Base64.h" #include -#include "JSON_parser.h" +#include "../../libvariant/lib/json/JSON_parser.h" #include #include #include #include -#include -#include -#include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/SharedPtr.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/MsgPackEmitter.cc b/src/hos_libvariant/src/libvariant/src/MsgPackEmitter.cc similarity index 96% rename from src/hos_libvariant/src/src/MsgPackEmitter.cc rename to src/hos_libvariant/src/libvariant/src/MsgPackEmitter.cc index 447ee318..ddf64f50 100644 --- a/src/hos_libvariant/src/src/MsgPackEmitter.cc +++ b/src/hos_libvariant/src/libvariant/src/MsgPackEmitter.cc @@ -3,8 +3,9 @@ * \brief */ -#include "MsgPackEmitter.h" -#include "BlobMagic.h" +#include "../../libvariant/src/MsgPackEmitter.h" + +#include "../../libvariant/src/BlobMagic.h" static void msgpack_pack_string(msgpack_packer *packer, const char *str, unsigned len) { msgpack_pack_raw(packer, len); diff --git a/src/hos_libvariant/src/src/MsgPackEmitter.h b/src/hos_libvariant/src/libvariant/src/MsgPackEmitter.h similarity index 77% rename from src/hos_libvariant/src/src/MsgPackEmitter.h rename to src/hos_libvariant/src/libvariant/src/MsgPackEmitter.h index f398e2af..d215f2a5 100644 --- a/src/hos_libvariant/src/src/MsgPackEmitter.h +++ b/src/hos_libvariant/src/libvariant/src/MsgPackEmitter.h @@ -4,13 +4,14 @@ */ #ifndef VARIANT_MSGPACK_H #define VARIANT_MSGPACK_H + #pragma once -#include -#include -#include -#include -#include -#include "EventBuffer.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/include/Variant/EmitterOutput.h" +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/src/EventBuffer.h" #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/MsgPackParser.cc b/src/hos_libvariant/src/libvariant/src/MsgPackParser.cc similarity index 98% rename from src/hos_libvariant/src/src/MsgPackParser.cc rename to src/hos_libvariant/src/libvariant/src/MsgPackParser.cc index 595c9eea..ee34f11b 100644 --- a/src/hos_libvariant/src/src/MsgPackParser.cc +++ b/src/hos_libvariant/src/libvariant/src/MsgPackParser.cc @@ -3,10 +3,11 @@ * \brief */ -#include "MsgPackParser.h" -#include "BlobMagic.h" +#include "../../libvariant/src/MsgPackParser.h" + #include #include +#include "../../libvariant/src/BlobMagic.h" // vmpu = variant msg pack unpack diff --git a/src/hos_libvariant/src/src/MsgPackParser.h b/src/hos_libvariant/src/libvariant/src/MsgPackParser.h similarity index 89% rename from src/hos_libvariant/src/src/MsgPackParser.h rename to src/hos_libvariant/src/libvariant/src/MsgPackParser.h index be10f577..8b423015 100644 --- a/src/hos_libvariant/src/src/MsgPackParser.h +++ b/src/hos_libvariant/src/libvariant/src/MsgPackParser.h @@ -5,9 +5,10 @@ #ifndef VARIANT_MSGPACKPARSER_H #define VARIANT_MSGPACKPARSER_H + #pragma once -#include -#include +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/Parser.h" #include struct vmpu_context; diff --git a/src/hos_libvariant/src/src/ParseBool.cc b/src/hos_libvariant/src/libvariant/src/ParseBool.cc similarity index 97% rename from src/hos_libvariant/src/src/ParseBool.cc rename to src/hos_libvariant/src/libvariant/src/ParseBool.cc index c712ba4d..3915f260 100644 --- a/src/hos_libvariant/src/src/ParseBool.cc +++ b/src/hos_libvariant/src/libvariant/src/ParseBool.cc @@ -17,7 +17,8 @@ /** \file * \author John Bridgman */ -#include "ParseBool.h" +#include "../../libvariant/src/ParseBool.h" + #include diff --git a/src/hos_libvariant/src/src/ParseBool.h b/src/hos_libvariant/src/libvariant/src/ParseBool.h similarity index 100% rename from src/hos_libvariant/src/src/ParseBool.h rename to src/hos_libvariant/src/libvariant/src/ParseBool.h diff --git a/src/hos_libvariant/src/src/Parser.cc b/src/hos_libvariant/src/libvariant/src/Parser.cc similarity index 90% rename from src/hos_libvariant/src/src/Parser.cc rename to src/hos_libvariant/src/libvariant/src/Parser.cc index a554b054..8a208f2a 100644 --- a/src/hos_libvariant/src/src/Parser.cc +++ b/src/hos_libvariant/src/libvariant/src/Parser.cc @@ -19,21 +19,23 @@ * \brief */ -#include -#include +#include "../../libvariant/include/Variant/Parser.h" + #include -#include "JSONParser.h" + +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/src/JSONParser.h" #ifdef ENABLE_YAML -#include "YAMLParser.h" +#include "../../libvariant/src/YAMLParser.h" #endif #ifdef ENABLE_XML -#include "XMLPLISTParser.h" +#include "../../libvariant/src/XMLPLISTParser.h" #endif #ifdef ENABLE_MSGPACK -#include "MsgPackParser.h" +#include "../../libvariant/src/MsgPackParser.h" #endif -#include "BundleHdrParser.h" -#include +#include "../../libvariant/src/BundleHdrParser.h" +#include "../../libvariant/include/Variant/GuessFormat.h" namespace libvariant { ParserActions::~ParserActions() {} diff --git a/src/hos_libvariant/src/src/ParserInput.cc b/src/hos_libvariant/src/libvariant/src/ParserInput.cc similarity index 98% rename from src/hos_libvariant/src/src/ParserInput.cc rename to src/hos_libvariant/src/libvariant/src/ParserInput.cc index aca5ec83..7fc1f0b6 100644 --- a/src/hos_libvariant/src/src/ParserInput.cc +++ b/src/hos_libvariant/src/libvariant/src/ParserInput.cc @@ -19,7 +19,8 @@ * \brief */ -#include +#include "../../libvariant/include/Variant/ParserInput.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/Path.cc b/src/hos_libvariant/src/libvariant/src/Path.cc similarity index 97% rename from src/hos_libvariant/src/src/Path.cc rename to src/hos_libvariant/src/libvariant/src/Path.cc index beceffe9..76e0efb4 100644 --- a/src/hos_libvariant/src/src/Path.cc +++ b/src/hos_libvariant/src/libvariant/src/Path.cc @@ -2,7 +2,8 @@ * \author John Bridgman * \brief */ -#include +#include "../../libvariant/include/Variant/Path.h" + #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/Payload.cc b/src/hos_libvariant/src/libvariant/src/Payload.cc similarity index 98% rename from src/hos_libvariant/src/src/Payload.cc rename to src/hos_libvariant/src/libvariant/src/Payload.cc index 4787b82c..acd400cb 100644 --- a/src/hos_libvariant/src/src/Payload.cc +++ b/src/hos_libvariant/src/libvariant/src/Payload.cc @@ -2,11 +2,12 @@ * \author John Bridgman * \brief */ -#include -#include +#include "../../libvariant/include/Variant/Payload.h" + #include #include #include +#include "../../libvariant/include/Variant/Path.h" #define PADDING_MOD 32 diff --git a/src/hos_libvariant/src/src/Schema.cc b/src/hos_libvariant/src/libvariant/src/Schema.cc similarity index 99% rename from src/hos_libvariant/src/src/Schema.cc rename to src/hos_libvariant/src/libvariant/src/Schema.cc index 8ff405cb..0b5967c2 100644 --- a/src/hos_libvariant/src/src/Schema.cc +++ b/src/hos_libvariant/src/libvariant/src/Schema.cc @@ -22,8 +22,8 @@ * tv4 is available at http://geraintluff.github.com/tv4/ */ -#include -#include +#include "../../libvariant/include/Variant/Schema.h" + #include #include #include @@ -33,6 +33,7 @@ #include #include #include +#include "../../libvariant/include/Variant/Path.h" #define FLOAT_TOLERANCE 100*std::numeric_limits::epsilon() #define RECURSION_LIMIT 100 diff --git a/src/hos_libvariant/src/src/SchemaLoader.cc b/src/hos_libvariant/src/libvariant/src/SchemaLoader.cc similarity index 99% rename from src/hos_libvariant/src/src/SchemaLoader.cc rename to src/hos_libvariant/src/libvariant/src/SchemaLoader.cc index f6884271..20f1ea9e 100644 --- a/src/hos_libvariant/src/src/SchemaLoader.cc +++ b/src/hos_libvariant/src/libvariant/src/SchemaLoader.cc @@ -19,14 +19,16 @@ * \brief */ -#include -#include +#include "../../libvariant/include/Variant/SchemaLoader.h" + #include #include #include #include #include #include + +#include "../../libvariant/include/Variant/Extensions.h" #ifdef ENABLE_CURL #include #endif diff --git a/src/hos_libvariant/src/src/StackTrace.cc b/src/hos_libvariant/src/libvariant/src/StackTrace.cc similarity index 97% rename from src/hos_libvariant/src/src/StackTrace.cc rename to src/hos_libvariant/src/libvariant/src/StackTrace.cc index 641587af..ec8bc2c4 100644 --- a/src/hos_libvariant/src/src/StackTrace.cc +++ b/src/hos_libvariant/src/libvariant/src/StackTrace.cc @@ -19,7 +19,8 @@ * lookup the backtrace etc. in the man pages. * \author John Bridgman */ -#include "StackTrace.h" +#include "../../libvariant/src/StackTrace.h" + #include #include #include diff --git a/src/hos_libvariant/src/src/StackTrace.h b/src/hos_libvariant/src/libvariant/src/StackTrace.h similarity index 100% rename from src/hos_libvariant/src/src/StackTrace.h rename to src/hos_libvariant/src/libvariant/src/StackTrace.h diff --git a/src/hos_libvariant/src/src/Variant.cc b/src/hos_libvariant/src/libvariant/src/Variant.cc similarity index 99% rename from src/hos_libvariant/src/src/Variant.cc rename to src/hos_libvariant/src/libvariant/src/Variant.cc index 9afe8525..e767e3b6 100644 --- a/src/hos_libvariant/src/src/Variant.cc +++ b/src/hos_libvariant/src/libvariant/src/Variant.cc @@ -19,14 +19,15 @@ * \author John Bridgman * Variant implementation */ -#include -#include "ParseBool.h" +#include "../../libvariant/include/Variant/Variant.h" + #include #include #include #include #include #include +#include "../../libvariant/src/ParseBool.h" template class my_modulus { diff --git a/src/hos_libvariant/src/src/VariantEmitting.cc b/src/hos_libvariant/src/libvariant/src/VariantEmitting.cc similarity index 96% rename from src/hos_libvariant/src/src/VariantEmitting.cc rename to src/hos_libvariant/src/libvariant/src/VariantEmitting.cc index 5429e0ca..324c1bb1 100644 --- a/src/hos_libvariant/src/src/VariantEmitting.cc +++ b/src/hos_libvariant/src/libvariant/src/VariantEmitting.cc @@ -18,11 +18,11 @@ * \author John Bridgman * \brief */ -#include -#include #include #include #include +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Variant.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/VariantParsing.cc b/src/hos_libvariant/src/libvariant/src/VariantParsing.cc similarity index 98% rename from src/hos_libvariant/src/src/VariantParsing.cc rename to src/hos_libvariant/src/libvariant/src/VariantParsing.cc index 4bb32f07..7fb57eaf 100644 --- a/src/hos_libvariant/src/src/VariantParsing.cc +++ b/src/hos_libvariant/src/libvariant/src/VariantParsing.cc @@ -18,12 +18,12 @@ * \author John Bridgman * \brief */ -#include -#include #include #include #include #include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/Variant.h" #if 0 #include diff --git a/src/hos_libvariant/src/src/XMLPLISTDefs.h b/src/hos_libvariant/src/libvariant/src/XMLPLISTDefs.h similarity index 100% rename from src/hos_libvariant/src/src/XMLPLISTDefs.h rename to src/hos_libvariant/src/libvariant/src/XMLPLISTDefs.h diff --git a/src/hos_libvariant/src/src/XMLPLISTEmitter.cc b/src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.cc similarity index 96% rename from src/hos_libvariant/src/src/XMLPLISTEmitter.cc rename to src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.cc index 015b6ed6..db138a3b 100644 --- a/src/hos_libvariant/src/src/XMLPLISTEmitter.cc +++ b/src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.cc @@ -19,13 +19,15 @@ * \brief */ -#include "XMLPLISTEmitter.h" -#include +#include "../../libvariant/src/XMLPLISTEmitter.h" + #include #include #include -#include "XMLPLISTDefs.h" -#include "Base64.h" + +#include "../../libvariant/include/Variant/EmitterOutput.h" +#include "../../libvariant/src/Base64.h" +#include "../../libvariant/src/XMLPLISTDefs.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/XMLPLISTEmitter.h b/src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.h similarity index 98% rename from src/hos_libvariant/src/src/XMLPLISTEmitter.h rename to src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.h index 8e27943a..daac7a09 100644 --- a/src/hos_libvariant/src/src/XMLPLISTEmitter.h +++ b/src/hos_libvariant/src/libvariant/src/XMLPLISTEmitter.h @@ -21,8 +21,9 @@ */ #ifndef VARIANT_XMLPLISTEMITTER_H #define VARIANT_XMLPLISTEMITTER_H + #pragma once -#include +#include "../../libvariant/include/Variant/Emitter.h" #include #include #include diff --git a/src/hos_libvariant/src/src/XMLPLISTParser.cc b/src/hos_libvariant/src/libvariant/src/XMLPLISTParser.cc similarity index 98% rename from src/hos_libvariant/src/src/XMLPLISTParser.cc rename to src/hos_libvariant/src/libvariant/src/XMLPLISTParser.cc index cfbaf335..107c28a8 100644 --- a/src/hos_libvariant/src/src/XMLPLISTParser.cc +++ b/src/hos_libvariant/src/libvariant/src/XMLPLISTParser.cc @@ -18,14 +18,16 @@ * \author John Bridgman * \brief */ -#include "XMLPLISTParser.h" +#include "../../libvariant/src/XMLPLISTParser.h" + #include #include #include #include #include -#include "XMLPLISTDefs.h" -#include "Base64.h" + +#include "../../libvariant/src/Base64.h" +#include "../../libvariant/src/XMLPLISTDefs.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/XMLPLISTParser.h b/src/hos_libvariant/src/libvariant/src/XMLPLISTParser.h similarity index 92% rename from src/hos_libvariant/src/src/XMLPLISTParser.h rename to src/hos_libvariant/src/libvariant/src/XMLPLISTParser.h index 6802ef0d..65598fb1 100644 --- a/src/hos_libvariant/src/src/XMLPLISTParser.h +++ b/src/hos_libvariant/src/libvariant/src/XMLPLISTParser.h @@ -20,12 +20,13 @@ */ #ifndef VARIANT_XMLPLISTPARSER_H #define VARIANT_XMLPLISTPARSER_H + #pragma once #include #include -#include -#include -#include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/SharedPtr.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/YAMLEmitter.cc b/src/hos_libvariant/src/libvariant/src/YAMLEmitter.cc similarity index 98% rename from src/hos_libvariant/src/src/YAMLEmitter.cc rename to src/hos_libvariant/src/libvariant/src/YAMLEmitter.cc index ecbe8c4b..292ba1da 100644 --- a/src/hos_libvariant/src/src/YAMLEmitter.cc +++ b/src/hos_libvariant/src/libvariant/src/YAMLEmitter.cc @@ -19,13 +19,15 @@ * \author John Bridgman * \brief A wrapper class around a libyaml emitter */ -#include "YAMLEmitter.h" -#include +#include "../../libvariant/src/YAMLEmitter.h" + #include #include #include #include -#include "Base64.h" + +#include "../../libvariant/include/Variant/EmitterOutput.h" +#include "../../libvariant/src/Base64.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/YAMLEmitter.h b/src/hos_libvariant/src/libvariant/src/YAMLEmitter.h similarity index 98% rename from src/hos_libvariant/src/src/YAMLEmitter.h rename to src/hos_libvariant/src/libvariant/src/YAMLEmitter.h index a01250d0..12b8375d 100644 --- a/src/hos_libvariant/src/src/YAMLEmitter.h +++ b/src/hos_libvariant/src/libvariant/src/YAMLEmitter.h @@ -22,13 +22,14 @@ #ifndef YAMLEMITTER_INC #define YAMLEMITTER_INC + #pragma once #include #include #include #include #include -#include +#include "../../libvariant/include/Variant/Emitter.h" #include #include diff --git a/src/hos_libvariant/src/src/YAMLParser.cc b/src/hos_libvariant/src/libvariant/src/YAMLParser.cc similarity index 97% rename from src/hos_libvariant/src/src/YAMLParser.cc rename to src/hos_libvariant/src/libvariant/src/YAMLParser.cc index 73a03d7d..484ad62d 100644 --- a/src/hos_libvariant/src/src/YAMLParser.cc +++ b/src/hos_libvariant/src/libvariant/src/YAMLParser.cc @@ -19,13 +19,14 @@ * \author John Bridgman * \brief */ -#include "YAMLParser.h" +#include "../../libvariant/src/YAMLParser.h" + #include -#include "Base64.h" -#include "GuessScalar.h" #include #include #include +#include "../../libvariant/src/Base64.h" +#include "../../libvariant/src/GuessScalar.h" namespace libvariant { diff --git a/src/hos_libvariant/src/src/YAMLParser.h b/src/hos_libvariant/src/libvariant/src/YAMLParser.h similarity index 90% rename from src/hos_libvariant/src/src/YAMLParser.h rename to src/hos_libvariant/src/libvariant/src/YAMLParser.h index a1d8f484..ed3f328d 100644 --- a/src/hos_libvariant/src/src/YAMLParser.h +++ b/src/hos_libvariant/src/libvariant/src/YAMLParser.h @@ -23,10 +23,11 @@ #ifndef YAMLPARSER_INC #define YAMLPARSER_INC + #pragma once -#include -#include -#include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/SharedPtr.h" #include namespace libvariant { diff --git a/src/hos_libvariant/src/src/argparse-schema.cc b/src/hos_libvariant/src/libvariant/src/argparse-schema.cc similarity index 100% rename from src/hos_libvariant/src/src/argparse-schema.cc rename to src/hos_libvariant/src/libvariant/src/argparse-schema.cc diff --git a/src/hos_libvariant/src/src/argparse-schema.yaml b/src/hos_libvariant/src/libvariant/src/argparse-schema.yaml similarity index 100% rename from src/hos_libvariant/src/src/argparse-schema.yaml rename to src/hos_libvariant/src/libvariant/src/argparse-schema.yaml diff --git a/src/hos_libvariant/src/src/gen-argparse-schema b/src/hos_libvariant/src/libvariant/src/gen-argparse-schema similarity index 100% rename from src/hos_libvariant/src/src/gen-argparse-schema rename to src/hos_libvariant/src/libvariant/src/gen-argparse-schema diff --git a/src/hos_libvariant/src/src/gen-json-schema b/src/hos_libvariant/src/libvariant/src/gen-json-schema similarity index 100% rename from src/hos_libvariant/src/src/gen-json-schema rename to src/hos_libvariant/src/libvariant/src/gen-json-schema diff --git a/src/hos_libvariant/src/src/json-schema-v4.cc b/src/hos_libvariant/src/libvariant/src/json-schema-v4.cc similarity index 100% rename from src/hos_libvariant/src/src/json-schema-v4.cc rename to src/hos_libvariant/src/libvariant/src/json-schema-v4.cc diff --git a/src/hos_libvariant/src/src/json-schema-v4.json b/src/hos_libvariant/src/libvariant/src/json-schema-v4.json similarity index 100% rename from src/hos_libvariant/src/src/json-schema-v4.json rename to src/hos_libvariant/src/libvariant/src/json-schema-v4.json diff --git a/src/hos_libvariant/src/src/varsh.cc b/src/hos_libvariant/src/libvariant/src/varsh.cc similarity index 96% rename from src/hos_libvariant/src/src/varsh.cc rename to src/hos_libvariant/src/libvariant/src/varsh.cc index 3595288e..13aa9cc4 100644 --- a/src/hos_libvariant/src/src/varsh.cc +++ b/src/hos_libvariant/src/libvariant/src/varsh.cc @@ -19,16 +19,16 @@ * \brief Variant tool */ -#include -#include -#include -#include -#include -#include #include #include #include #include +#include "../../libvariant/include/Variant/ArgParse.h" +#include "../../libvariant/include/Variant/Extensions.h" +#include "../../libvariant/include/Variant/Payload.h" +#include "../../libvariant/include/Variant/Schema.h" +#include "../../libvariant/include/Variant/SchemaLoader.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace std; using namespace libvariant; diff --git a/src/hos_libvariant/src/test/CMakeLists.txt b/src/hos_libvariant/src/libvariant/test/CMakeLists.txt similarity index 100% rename from src/hos_libvariant/src/test/CMakeLists.txt rename to src/hos_libvariant/src/libvariant/test/CMakeLists.txt diff --git a/src/hos_libvariant/src/test/TestAssert.h b/src/hos_libvariant/src/libvariant/test/TestAssert.h similarity index 100% rename from src/hos_libvariant/src/test/TestAssert.h rename to src/hos_libvariant/src/libvariant/test/TestAssert.h diff --git a/src/hos_libvariant/src/test/TestCommon.h b/src/hos_libvariant/src/libvariant/test/TestCommon.h similarity index 93% rename from src/hos_libvariant/src/test/TestCommon.h rename to src/hos_libvariant/src/libvariant/test/TestCommon.h index f710b510..30f95701 100644 --- a/src/hos_libvariant/src/test/TestCommon.h +++ b/src/hos_libvariant/src/libvariant/test/TestCommon.h @@ -4,11 +4,12 @@ */ #ifndef TESTCOMMON_H #define TESTCOMMON_H + #pragma once -#include "EventBuffer.h" -#include -#include -#include +#include "../../libvariant/src/EventBuffer.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/Emitter.h" #include #include #include diff --git a/src/hos_libvariant/src/test/prof_msgpack.cc b/src/hos_libvariant/src/libvariant/test/prof_msgpack.cc similarity index 97% rename from src/hos_libvariant/src/test/prof_msgpack.cc rename to src/hos_libvariant/src/libvariant/test/prof_msgpack.cc index 4336b3c3..38b6fe85 100644 --- a/src/hos_libvariant/src/test/prof_msgpack.cc +++ b/src/hos_libvariant/src/libvariant/test/prof_msgpack.cc @@ -3,14 +3,14 @@ * \brief */ -#include "TestCommon.h" -#include #include #include #include #include #include #include +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/rand_test_json.cc b/src/hos_libvariant/src/libvariant/test/rand_test_json.cc similarity index 79% rename from src/hos_libvariant/src/test/rand_test_json.cc rename to src/hos_libvariant/src/libvariant/test/rand_test_json.cc index e7192310..dec42446 100644 --- a/src/hos_libvariant/src/test/rand_test_json.cc +++ b/src/hos_libvariant/src/libvariant/test/rand_test_json.cc @@ -3,7 +3,7 @@ * \brief */ -#include "TestCommon.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/rand_test_msgpack.cc b/src/hos_libvariant/src/libvariant/test/rand_test_msgpack.cc similarity index 80% rename from src/hos_libvariant/src/test/rand_test_msgpack.cc rename to src/hos_libvariant/src/libvariant/test/rand_test_msgpack.cc index b57d664b..ca148938 100644 --- a/src/hos_libvariant/src/test/rand_test_msgpack.cc +++ b/src/hos_libvariant/src/libvariant/test/rand_test_msgpack.cc @@ -3,7 +3,7 @@ * \brief */ -#include "TestCommon.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/rand_test_xml.cc b/src/hos_libvariant/src/libvariant/test/rand_test_xml.cc similarity index 80% rename from src/hos_libvariant/src/test/rand_test_xml.cc rename to src/hos_libvariant/src/libvariant/test/rand_test_xml.cc index 0278dfd0..3b1ced5b 100644 --- a/src/hos_libvariant/src/test/rand_test_xml.cc +++ b/src/hos_libvariant/src/libvariant/test/rand_test_xml.cc @@ -2,7 +2,7 @@ * \author John Bridgman * \brief */ -#include "TestCommon.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/rand_test_yaml.cc b/src/hos_libvariant/src/libvariant/test/rand_test_yaml.cc similarity index 79% rename from src/hos_libvariant/src/test/rand_test_yaml.cc rename to src/hos_libvariant/src/libvariant/test/rand_test_yaml.cc index 841245c7..aa0fa836 100644 --- a/src/hos_libvariant/src/test/rand_test_yaml.cc +++ b/src/hos_libvariant/src/libvariant/test/rand_test_yaml.cc @@ -2,7 +2,7 @@ * \author John Bridgman * \brief */ -#include "TestCommon.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_argparse.cc b/src/hos_libvariant/src/libvariant/test/test_argparse.cc similarity index 98% rename from src/hos_libvariant/src/test/test_argparse.cc rename to src/hos_libvariant/src/libvariant/test/test_argparse.cc index e8ce82b1..ff2d45c4 100644 --- a/src/hos_libvariant/src/test/test_argparse.cc +++ b/src/hos_libvariant/src/libvariant/test/test_argparse.cc @@ -3,11 +3,11 @@ * \brief */ -#include -#include #include #include #include +#include "../../libvariant/include/Variant/ArgParse.h" +#include "../../libvariant/include/Variant/Schema.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_argparse.sh.in b/src/hos_libvariant/src/libvariant/test/test_argparse.sh.in similarity index 100% rename from src/hos_libvariant/src/test/test_argparse.sh.in rename to src/hos_libvariant/src/libvariant/test/test_argparse.sh.in diff --git a/src/hos_libvariant/src/test/test_argparse_merge.cc b/src/hos_libvariant/src/libvariant/test/test_argparse_merge.cc similarity index 94% rename from src/hos_libvariant/src/test/test_argparse_merge.cc rename to src/hos_libvariant/src/libvariant/test/test_argparse_merge.cc index fd8c33d1..8db9efb9 100644 --- a/src/hos_libvariant/src/test/test_argparse_merge.cc +++ b/src/hos_libvariant/src/libvariant/test/test_argparse_merge.cc @@ -5,11 +5,10 @@ //=== Includes ================================================================ -#include -#include -#include - #include +#include "../../libvariant/include/Variant/ArgParse.h" +#include "../../libvariant/include/Variant/Schema.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace std; using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_base64.cc b/src/hos_libvariant/src/libvariant/test/test_base64.cc similarity index 99% rename from src/hos_libvariant/src/test/test_base64.cc rename to src/hos_libvariant/src/libvariant/test/test_base64.cc index 5bc66f81..869cf866 100644 --- a/src/hos_libvariant/src/test/test_base64.cc +++ b/src/hos_libvariant/src/libvariant/test/test_base64.cc @@ -2,10 +2,11 @@ * \author John Bridgman * \brief */ -#include "Base64.h" #include #include #include + +#include "../../libvariant/src/Base64.h" using namespace libvariant; unsigned char test_data[] = { diff --git a/src/hos_libvariant/src/test/test_bundleemitter.cc b/src/hos_libvariant/src/libvariant/test/test_bundleemitter.cc similarity index 91% rename from src/hos_libvariant/src/test/test_bundleemitter.cc rename to src/hos_libvariant/src/libvariant/test/test_bundleemitter.cc index 7305e0f2..466deca1 100644 --- a/src/hos_libvariant/src/test/test_bundleemitter.cc +++ b/src/hos_libvariant/src/libvariant/test/test_bundleemitter.cc @@ -3,16 +3,17 @@ * \brief */ -#include "TestAssert.h" -#include -#include -#include #include #include #include #include #include #include + +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Payload.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_bundlehdr.cc b/src/hos_libvariant/src/libvariant/test/test_bundlehdr.cc similarity index 86% rename from src/hos_libvariant/src/test/test_bundlehdr.cc rename to src/hos_libvariant/src/libvariant/test/test_bundlehdr.cc index 35f31363..6582e439 100644 --- a/src/hos_libvariant/src/test/test_bundlehdr.cc +++ b/src/hos_libvariant/src/libvariant/test/test_bundlehdr.cc @@ -4,14 +4,14 @@ * */ -#include -#include -#include #include #include #include #include #include +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_bundleparser.cc b/src/hos_libvariant/src/libvariant/test/test_bundleparser.cc similarity index 94% rename from src/hos_libvariant/src/test/test_bundleparser.cc rename to src/hos_libvariant/src/libvariant/test/test_bundleparser.cc index 25ec8e47..5bc6b856 100644 --- a/src/hos_libvariant/src/test/test_bundleparser.cc +++ b/src/hos_libvariant/src/libvariant/test/test_bundleparser.cc @@ -2,12 +2,12 @@ * \author John Bridgman * \brief */ -#include "TestAssert.h" -#include -#include #include #include #include +#include "../../libvariant/include/Variant/Payload.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_empty.cc b/src/hos_libvariant/src/libvariant/test/test_empty.cc similarity index 90% rename from src/hos_libvariant/src/test/test_empty.cc rename to src/hos_libvariant/src/libvariant/test/test_empty.cc index ab8a01e4..a995437a 100644 --- a/src/hos_libvariant/src/test/test_empty.cc +++ b/src/hos_libvariant/src/libvariant/test/test_empty.cc @@ -3,9 +3,10 @@ * \brief */ -#include -#include #include + +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_extensions.cc b/src/hos_libvariant/src/libvariant/test/test_extensions.cc similarity index 96% rename from src/hos_libvariant/src/test/test_extensions.cc rename to src/hos_libvariant/src/libvariant/test/test_extensions.cc index 6752318b..728cc403 100644 --- a/src/hos_libvariant/src/test/test_extensions.cc +++ b/src/hos_libvariant/src/libvariant/test/test_extensions.cc @@ -7,8 +7,9 @@ //=== Includes ================================================================ #include -#include -#include + +#include "../../libvariant/include/Variant/Extensions.h" +#include "../../libvariant/include/Variant/Variant.h" using namespace std; using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_guess.cc b/src/hos_libvariant/src/libvariant/test/test_guess.cc similarity index 91% rename from src/hos_libvariant/src/test/test_guess.cc rename to src/hos_libvariant/src/libvariant/test/test_guess.cc index 2732569e..1f33390f 100644 --- a/src/hos_libvariant/src/test/test_guess.cc +++ b/src/hos_libvariant/src/libvariant/test/test_guess.cc @@ -3,10 +3,10 @@ * \brief */ -#include "TestAssert.h" -#include #include #include +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_json_parser.cc b/src/hos_libvariant/src/libvariant/test/test_json_parser.cc similarity index 91% rename from src/hos_libvariant/src/test/test_json_parser.cc rename to src/hos_libvariant/src/libvariant/test/test_json_parser.cc index fbc300e2..ee6c14b7 100644 --- a/src/hos_libvariant/src/test/test_json_parser.cc +++ b/src/hos_libvariant/src/libvariant/test/test_json_parser.cc @@ -2,9 +2,10 @@ * \author John Bridgman * \brief */ -#include #include -#include "TestCommon.h" + +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_loadall.cc b/src/hos_libvariant/src/libvariant/test/test_loadall.cc similarity index 90% rename from src/hos_libvariant/src/test/test_loadall.cc rename to src/hos_libvariant/src/libvariant/test/test_loadall.cc index dece4aef..e825ca58 100644 --- a/src/hos_libvariant/src/test/test_loadall.cc +++ b/src/hos_libvariant/src/libvariant/test/test_loadall.cc @@ -3,8 +3,8 @@ * \brief */ -#include #include +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; diff --git a/src/hos_libvariant/src/test/test_memoryoutput.cc b/src/hos_libvariant/src/libvariant/test/test_memoryoutput.cc similarity index 92% rename from src/hos_libvariant/src/test/test_memoryoutput.cc rename to src/hos_libvariant/src/libvariant/test/test_memoryoutput.cc index a418dda8..89825649 100644 --- a/src/hos_libvariant/src/test/test_memoryoutput.cc +++ b/src/hos_libvariant/src/libvariant/test/test_memoryoutput.cc @@ -3,8 +3,9 @@ * \brief */ -#include #include + +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; int main(int argc, char **argv) { diff --git a/src/hos_libvariant/src/test/test_numerics.cc b/src/hos_libvariant/src/libvariant/test/test_numerics.cc similarity index 98% rename from src/hos_libvariant/src/test/test_numerics.cc rename to src/hos_libvariant/src/libvariant/test/test_numerics.cc index b8735059..f39a61a7 100644 --- a/src/hos_libvariant/src/test/test_numerics.cc +++ b/src/hos_libvariant/src/libvariant/test/test_numerics.cc @@ -2,14 +2,15 @@ * \author John Bridgman * \brief */ -#include "TestAssert.h" -#include #include #include #include #include #include #include + +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_path.cc b/src/hos_libvariant/src/libvariant/test/test_path.cc similarity index 97% rename from src/hos_libvariant/src/test/test_path.cc rename to src/hos_libvariant/src/libvariant/test/test_path.cc index 7893157d..84aaccc9 100644 --- a/src/hos_libvariant/src/test/test_path.cc +++ b/src/hos_libvariant/src/libvariant/test/test_path.cc @@ -3,11 +3,11 @@ * \brief */ -#include "TestAssert.h" -#include -#include #include #include +#include "../../libvariant/include/Variant/Path.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_payload.cc b/src/hos_libvariant/src/libvariant/test/test_payload.cc similarity index 95% rename from src/hos_libvariant/src/test/test_payload.cc rename to src/hos_libvariant/src/libvariant/test/test_payload.cc index 2a6ca825..10657de4 100644 --- a/src/hos_libvariant/src/test/test_payload.cc +++ b/src/hos_libvariant/src/libvariant/test/test_payload.cc @@ -3,12 +3,12 @@ * \brief */ -#include "TestAssert.h" -#include -#include #include #include #include +#include "../../libvariant/include/Variant/ParserInput.h" +#include "../../libvariant/include/Variant/Payload.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_roundtrip.cc b/src/hos_libvariant/src/libvariant/test/test_roundtrip.cc similarity index 97% rename from src/hos_libvariant/src/test/test_roundtrip.cc rename to src/hos_libvariant/src/libvariant/test/test_roundtrip.cc index cc6667d2..34f7d96e 100644 --- a/src/hos_libvariant/src/test/test_roundtrip.cc +++ b/src/hos_libvariant/src/libvariant/test/test_roundtrip.cc @@ -1,6 +1,7 @@ #include #include -#include + +#include "../../libvariant/include/Variant/Variant.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_schema.cc b/src/hos_libvariant/src/libvariant/test/test_schema.cc similarity index 98% rename from src/hos_libvariant/src/test/test_schema.cc rename to src/hos_libvariant/src/libvariant/test/test_schema.cc index 8285e452..ba087367 100644 --- a/src/hos_libvariant/src/test/test_schema.cc +++ b/src/hos_libvariant/src/libvariant/test/test_schema.cc @@ -3,8 +3,6 @@ * \brief */ -#include -#include #include #include #include @@ -12,6 +10,8 @@ #include #include #include +#include "../../libvariant/include/Variant/Schema.h" +#include "../../libvariant/include/Variant/SchemaLoader.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_schema_data/invalid-schema.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/invalid-schema.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/invalid-schema.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/invalid-schema.test diff --git a/src/hos_libvariant/src/test/test_schema_data/invalid_path.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/invalid_path.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/invalid_path.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/invalid_path.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/README b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/README similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/README rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/README diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalItems.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalItems.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalItems.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalItems.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalItems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalItems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalItems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalItems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalProperties.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalProperties.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalProperties.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalProperties.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalProperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalProperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/additionalProperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/additionalProperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/allOf.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/allOf.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/allOf.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/allOf.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/allOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/allOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/allOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/allOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/anyOf.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/anyOf.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/anyOf.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/anyOf.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/anyOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/anyOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/anyOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/anyOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/convert.py b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/convert.py similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/convert.py rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/convert.py diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/definitions.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/definitions.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/definitions.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/definitions.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/definitions.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/definitions.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/definitions.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/definitions.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/dependencies.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/dependencies.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/dependencies.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/dependencies.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/dependencies.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/dependencies.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/dependencies.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/dependencies.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/enum.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/enum.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/enum.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/enum.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/enum.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/enum.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/enum.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/enum.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/items.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/items.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/items.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/items.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/items.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/items.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/items.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/items.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxItems.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxItems.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxItems.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxItems.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxItems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxItems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxItems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxItems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxLength.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxLength.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxLength.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxLength.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxLength.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxLength.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxLength.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxLength.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxProperties.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxProperties.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxProperties.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxProperties.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxProperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxProperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maxProperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maxProperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maximum.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maximum.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maximum.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maximum.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maximum.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maximum.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/maximum.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/maximum.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minItems.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minItems.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minItems.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minItems.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minItems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minItems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minItems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minItems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minLength.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minLength.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minLength.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minLength.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minLength.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minLength.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minLength.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minLength.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minProperties.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minProperties.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minProperties.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minProperties.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minProperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minProperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minProperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minProperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minimum.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minimum.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minimum.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minimum.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minimum.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minimum.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/minimum.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/minimum.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/multipleOf.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/multipleOf.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/multipleOf.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/multipleOf.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/multipleOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/multipleOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/multipleOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/multipleOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/not.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/not.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/not.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/not.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/not.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/not.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/not.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/not.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/oneOf.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/oneOf.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/oneOf.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/oneOf.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/oneOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/oneOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/oneOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/oneOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/pattern.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/pattern.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/pattern.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/pattern.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/pattern.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/pattern.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/pattern.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/pattern.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/patternProperties.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/patternProperties.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/patternProperties.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/patternProperties.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/patternProperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/patternProperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/patternProperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/patternProperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/properties.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/properties.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/properties.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/properties.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/properties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/properties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/properties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/properties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/ref.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/ref.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/ref.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/ref.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/ref.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/ref.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/ref.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/ref.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/required.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/required.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/required.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/required.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/required.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/required.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/required.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/required.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/type.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/type.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/type.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/type.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/type.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/type.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/type.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/type.test diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/uniqueItems.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/uniqueItems.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/uniqueItems.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/uniqueItems.json diff --git a/src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/uniqueItems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/uniqueItems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/jsonschema-tests/uniqueItems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/jsonschema-tests/uniqueItems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/negative-unique-items.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/negative-unique-items.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/negative-unique-items.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/negative-unique-items.test diff --git a/src/hos_libvariant/src/test/test_schema_data/recursion.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/recursion.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/recursion.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/recursion.test diff --git a/src/hos_libvariant/src/test/test_schema_data/sample-test.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/sample-test.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/sample-test.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/sample-test.test diff --git a/src/hos_libvariant/src/test/test_schema_data/simple-test-fail.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test-fail.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/simple-test-fail.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test-fail.json diff --git a/src/hos_libvariant/src/test/test_schema_data/simple-test-schema.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test-schema.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/simple-test-schema.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test-schema.json diff --git a/src/hos_libvariant/src/test/test_schema_data/simple-test.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/simple-test.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/simple-test.json diff --git a/src/hos_libvariant/src/test/test_schema_data/test_resolveuri.json b/src/hos_libvariant/src/libvariant/test/test_schema_data/test_resolveuri.json similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/test_resolveuri.json rename to src/hos_libvariant/src/libvariant/test/test_schema_data/test_resolveuri.json diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/01-type.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/01-type.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/01-type.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/01-type.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/02-enum.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/02-enum.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/02-enum.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/02-enum.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/02-enum.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/02-enum.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/02-enum.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/02-enum.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/01-any-type/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/01-any-type/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/01-min-max.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/01-min-max.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/01-min-max.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/01-min-max.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/01-min-max.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/01-min-max.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/01-min-max.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/01-min-max.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/02-multipleOf.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/02-numeric/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/02-numeric/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/01-min-max-length.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/02-pattern.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/02-pattern.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/02-pattern.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/02-pattern.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/02-pattern.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/02-pattern.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/02-pattern.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/02-pattern.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/03-strings/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/03-strings/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/01-min-max-length.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/02-uniqueitems.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/03-items-plain.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/04-items-tuple-typing.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/05-additionalitems.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/04-arrays/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/04-arrays/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/01-min-max-properties.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/02-required.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/02-required.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/02-required.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/02-required.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/02-required.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/02-required.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/02-required.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/02-required.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/03-properties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/03-properties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/03-properties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/03-properties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/03-properties.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/03-properties.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/03-properties.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/03-properties.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/04-patternproperties.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/05-additionalproperties.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/06-dependencies.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/06-dependencies.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/06-dependencies.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/06-dependencies.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/06-dependencies.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/06-dependencies.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/06-dependencies.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/06-dependencies.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/05-objects/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/05-objects/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/01-allOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/01-allOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/01-allOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/01-allOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/01-allOf.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/01-allOf.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/01-allOf.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/01-allOf.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/02-anyOf.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/03-oneOf.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/04-not.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/04-not.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/04-not.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/04-not.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/04-not.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/04-not.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/04-not.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/04-not.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/06-combinations/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/06-combinations/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/04-ref.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/04-ref.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/04-ref.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/04-ref.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/04-ref.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/04-ref.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/04-ref.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/04-ref.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.test b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.test similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.test rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.test diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.yaml b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.yaml similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.yaml rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/05-inline-addressing.yaml diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/07-ref/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/07-ref/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/Makefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/Makefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/Makefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/Makefile diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/README b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/README similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/README rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/README diff --git a/src/hos_libvariant/src/test/test_schema_data/tv4-tests/submakefile b/src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/submakefile similarity index 100% rename from src/hos_libvariant/src/test/test_schema_data/tv4-tests/submakefile rename to src/hos_libvariant/src/libvariant/test/test_schema_data/tv4-tests/submakefile diff --git a/src/hos_libvariant/src/test/test_variant.cc b/src/hos_libvariant/src/libvariant/test/test_variant.cc similarity index 98% rename from src/hos_libvariant/src/test/test_variant.cc rename to src/hos_libvariant/src/libvariant/test/test_variant.cc index 6a8c0bce..dcb03502 100644 --- a/src/hos_libvariant/src/test/test_variant.cc +++ b/src/hos_libvariant/src/libvariant/test/test_variant.cc @@ -18,16 +18,16 @@ * \author John Bridgman * \brief A simple test for the Variant and JSONToVariant parser. */ -#include -#include -#include -#include "TestCommon.h" -#include "TestAssert.h" #include #include #include #include #include +#include "../../libvariant/include/Variant/Emitter.h" +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_xml_parser.cc b/src/hos_libvariant/src/libvariant/test/test_xml_parser.cc similarity index 85% rename from src/hos_libvariant/src/test/test_xml_parser.cc rename to src/hos_libvariant/src/libvariant/test/test_xml_parser.cc index 57df8e81..839c2e7b 100644 --- a/src/hos_libvariant/src/test/test_xml_parser.cc +++ b/src/hos_libvariant/src/libvariant/test/test_xml_parser.cc @@ -2,9 +2,9 @@ * \author John Bridgman * \brief */ -#include "TestAssert.h" -#include #include +#include "../../libvariant/include/Variant/Variant.h" +#include "../../libvariant/test/TestAssert.h" using namespace libvariant; using namespace std; diff --git a/src/hos_libvariant/src/test/test_yaml_parser.cc b/src/hos_libvariant/src/libvariant/test/test_yaml_parser.cc similarity index 89% rename from src/hos_libvariant/src/test/test_yaml_parser.cc rename to src/hos_libvariant/src/libvariant/test/test_yaml_parser.cc index 7baf82d3..a5735530 100644 --- a/src/hos_libvariant/src/test/test_yaml_parser.cc +++ b/src/hos_libvariant/src/libvariant/test/test_yaml_parser.cc @@ -2,11 +2,11 @@ * \author John Bridgman * \brief */ -#include #include -#include "EventBuffer.h" -#include "TestCommon.h" #include +#include "../../libvariant/include/Variant/Parser.h" +#include "../../libvariant/src/EventBuffer.h" +#include "../../libvariant/test/TestCommon.h" using namespace libvariant;