From 5e527213a2430bb3018e5eebd909aef294edf9b5 Mon Sep 17 00:00:00 2001 From: Karen Arutyunov Date: Fri, 18 Dec 2020 18:48:46 +0300 Subject: Switch to build2 --- examples/cxx/tree/order/README | 11 -- examples/cxx/tree/order/element/README | 35 ------ examples/cxx/tree/order/element/driver.cxx | 147 ----------------------- examples/cxx/tree/order/element/makefile | 99 --------------- examples/cxx/tree/order/element/transactions.xml | 32 ----- examples/cxx/tree/order/element/transactions.xsd | 58 --------- examples/cxx/tree/order/makefile | 43 ------- examples/cxx/tree/order/mixed/README | 45 ------- examples/cxx/tree/order/mixed/driver.cxx | 89 -------------- examples/cxx/tree/order/mixed/makefile | 98 --------------- examples/cxx/tree/order/mixed/text.xml | 17 --- examples/cxx/tree/order/mixed/text.xsd | 28 ----- 12 files changed, 702 deletions(-) delete mode 100644 examples/cxx/tree/order/README delete mode 100644 examples/cxx/tree/order/element/README delete mode 100644 examples/cxx/tree/order/element/driver.cxx delete mode 100644 examples/cxx/tree/order/element/makefile delete mode 100644 examples/cxx/tree/order/element/transactions.xml delete mode 100644 examples/cxx/tree/order/element/transactions.xsd delete mode 100644 examples/cxx/tree/order/makefile delete mode 100644 examples/cxx/tree/order/mixed/README delete mode 100644 examples/cxx/tree/order/mixed/driver.cxx delete mode 100644 examples/cxx/tree/order/mixed/makefile delete mode 100644 examples/cxx/tree/order/mixed/text.xml delete mode 100644 examples/cxx/tree/order/mixed/text.xsd (limited to 'examples/cxx/tree/order') diff --git a/examples/cxx/tree/order/README b/examples/cxx/tree/order/README deleted file mode 100644 index 7125a2d..0000000 --- a/examples/cxx/tree/order/README +++ /dev/null @@ -1,11 +0,0 @@ -This directory contains a number of examples that show how to use ordered -types to capture and maintain content order. The following list gives an -overview of each example: - -element - Shows how to use ordered types to capture and maintain element order, - including element wildcards. - -mixed - Shows how to use ordered types to capture mixed content text and to - maintain order information between elements and text. diff --git a/examples/cxx/tree/order/element/README b/examples/cxx/tree/order/element/README deleted file mode 100644 index 19f2381..0000000 --- a/examples/cxx/tree/order/element/README +++ /dev/null @@ -1,35 +0,0 @@ -This example shows how to use ordered types to capture and maintain -element order, including element wildcards. - -The example consists of the following files: - -transactions.xsd - XML Schema which describes various bank transactions. A batch of - transactions can contain any number of different transactions in - any order but the order of transaction in the batch is significant. - -library.xml - Sample XML instance document. - -transactions.hxx -transactions.cxx - C++ types that represent the given vocabulary as well as a set of - parsing and serialization functions. These are generated by XSD - from transactions.xsd. Note that the --ordered-type option is - used to indicate to the XSD compiler that the batch type is - ordered. We also use the --generate-wildcard option to enable - wildcard support. An element wildcard is used in the batch to - allow transaction extensions. - -driver.cxx - Driver for the example. It first calls one of the parsing functions - that constructs the object model from the input XML file. It then - iterates over transactions in the batch using the content order - sequence. The driver then performs various modifications of the - object model while showing how to maintain the content order. - Finally, it saves the modified transaction batch back to XML to - verify that the content order is preserved in the output document. - -To run the example on the sample XML instance document simply execute: - -$ ./driver transactions.xml diff --git a/examples/cxx/tree/order/element/driver.cxx b/examples/cxx/tree/order/element/driver.cxx deleted file mode 100644 index 0ea6d6f..0000000 --- a/examples/cxx/tree/order/element/driver.cxx +++ /dev/null @@ -1,147 +0,0 @@ -// file : examples/cxx/tree/order/element/driver.cxx -// copyright : not copyrighted - public domain - -#include // std::auto_ptr -#include -#include - -#include -#include - -#include "transactions.hxx" - -// The following string class keeps us sane when working with Xerces. -// Include it after the generated header in order to get only char or -// wchar_t version depending on how you compiled your schemas. -// -#include - -using std::cerr; -using std::endl; - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " transactions.xml" << endl; - return 1; - } - - using namespace xercesc; - - int r (0); - - // The Xerces-C++ DOM objects that will be used to store the - // content matched by the wildcard "out-lives" the call to the - // parsing function. Therefore we need to initialize the - // Xerces-C++ runtime ourselves. - // - XMLPlatformUtils::Initialize (); - - try - { - using namespace transactions; - - // Parse the batch. - // - std::auto_ptr b ( - batch_ (argv[1], xml_schema::flags::dont_initialize)); - - // Print what we've got in content order. - // - for (batch::content_order_const_iterator i (b->content_order ().begin ()); - i != b->content_order ().end (); - ++i) - { - switch (i->id) - { - case batch::balance_id: - { - const balance& t (b->balance ()[i->index]); - cerr << t.account () << " balance" << endl; - break; - } - case batch::withdraw_id: - { - const withdraw& t (b->withdraw ()[i->index]); - cerr << t.account () << " withdraw " << t.amount () << endl; - break; - } - case batch::deposit_id: - { - const deposit& t (b->deposit ()[i->index]); - cerr << t.account () << " deposit " << t.amount () << endl; - break; - } - case batch::any_id: - { - namespace xml = xsd::cxx::xml; - - const DOMElement& e (b->any ()[i->index]); - cerr << xml::transcode (e.getLocalName ()) << endl; - break; - } - default: - { - assert (false); // Unknown content id. - } - } - } - - cerr << endl; - - // Modify the transaction batch. First remove the last transaction. - // Note that we have to update both the content itself and content - // order sequences. - // - batch::content_order_sequence& co (b->content_order ()); - - co.pop_back (); - b->withdraw ().pop_back (); - - // Now add a few more transactions. Again we have to add both the - // content and its ordering. The order information consists of the - // content id and, in case of a sequence, the index. - // - b->deposit ().push_back (deposit (123456789, 100000)); - co.push_back ( - batch::content_order_type ( - batch::deposit_id, b->deposit ().size () - 1)); - - // The next transaction we add at the beginning of the batch. - // - b->balance ().push_back (balance (123456789)); - co.insert (co.begin (), - batch::content_order_type ( - batch::balance_id, b->balance ().size () - 1)); - - // Note also that when we merely modify the content of one - // of the elements in place, we don't need to update its - // order. For example: - // - b->deposit ()[0].amount (2000000); - - // Serialize the modified transaction batch back to XML. - // - xml_schema::namespace_infomap map; - - map[""].name = "http://www.codesynthesis.com/transactions"; - map[""].schema = "transactions.xsd"; - map["te"].name = "http://www.codesynthesis.com/transactions-extras"; - - batch_ (std::cout, - *b, - map, - "UTF-8", - xml_schema::flags::dont_initialize); - } - catch (const xml_schema::exception& e) - { - cerr << e << endl; - r = 1; - } - - XMLPlatformUtils::Terminate (); - return r; -} diff --git a/examples/cxx/tree/order/element/makefile b/examples/cxx/tree/order/element/makefile deleted file mode 100644 index 8116787..0000000 --- a/examples/cxx/tree/order/element/makefile +++ /dev/null @@ -1,99 +0,0 @@ -# file : examples/cxx/tree/order/element/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -xsd := transactions.xsd -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o)) -dep := $(obj:.o=.o.d) - -driver := $(out_base)/driver -install := $(out_base)/.install -dist := $(out_base)/.dist -dist-win := $(out_base)/.dist-win -clean := $(out_base)/.clean - -# Import. -# -$(call import,\ - $(scf_root)/import/libxerces-c/stub.make,\ - l: xerces_c.l,cpp-options: xerces_c.l.cpp-options) - -# Build. -# -$(driver): $(obj) $(xerces_c.l) -lnsl - -$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd -$(obj) $(dep): $(xerces_c.l.cpp-options) - -genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx) -gen := $(addprefix $(out_base)/,$(genf)) - -$(gen): xsd := $(out_root)/xsd/xsd -$(gen): xsd_options += --generate-serialization --generate-wildcard \ ---ordered-type batch -$(gen): $(out_root)/xsd/xsd - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Install & Dist. -# -dist-common := $(out_base)/.dist-common - -$(install) $(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base)) - -$(install): - $(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README) - $(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx) - $(call install-data,$(src_base)/transactions.xsd,$(install_doc_dir)/xsd/$(path)/transactions.xsd) - $(call install-data,$(src_base)/transactions.xml,$(install_doc_dir)/xsd/$(path)/transactions.xml) - -$(dist-common): - $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx) - $(call install-data,$(src_base)/transactions.xsd,$(dist_prefix)/$(path)/transactions.xsd) - $(call install-data,$(src_base)/transactions.xml,$(dist_prefix)/$(path)/transactions.xml) - -$(dist): $(dist-common) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README) - -$(dist-win): $(dist-common) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt) - $(call message,,todos $(dist_prefix)/$(path)/README.txt) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) \ - $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(gen): | $(out_base)/.gitignore -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver $(genf) -$(clean): $(out_base)/.gitignore.clean - -$(call include,$(bld_root)/git/gitignore.make) -endif - -# How to. -# -$(call include,$(bld_root)/cxx/o-e.make) -$(call include,$(bld_root)/cxx/cxx-o.make) -$(call include,$(bld_root)/cxx/cxx-d.make) -$(call include,$(bld_root)/install.make) -$(call include,$(scf_root)/xsd/tree/xsd-cxx.make) - -# Dependencies. -# -$(call import,$(src_root)/xsd/makefile) diff --git a/examples/cxx/tree/order/element/transactions.xml b/examples/cxx/tree/order/element/transactions.xml deleted file mode 100644 index 4c317c2..0000000 --- a/examples/cxx/tree/order/element/transactions.xml +++ /dev/null @@ -1,32 +0,0 @@ - - - - - - - 123456789 - 1000000 - - - - 123456789 - - - - 123456789 - 500000 - - - - 123456789 - 500000 - - diff --git a/examples/cxx/tree/order/element/transactions.xsd b/examples/cxx/tree/order/element/transactions.xsd deleted file mode 100644 index 053aac4..0000000 --- a/examples/cxx/tree/order/element/transactions.xsd +++ /dev/null @@ -1,58 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/cxx/tree/order/makefile b/examples/cxx/tree/order/makefile deleted file mode 100644 index c807937..0000000 --- a/examples/cxx/tree/order/makefile +++ /dev/null @@ -1,43 +0,0 @@ -# file : examples/cxx/tree/order/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../build/bootstrap.make - -all_examples := element mixed -build_examples := element mixed - -default := $(out_base)/ -install := $(out_base)/.install -dist := $(out_base)/.dist -dist-win := $(out_base)/.dist-win -clean := $(out_base)/.clean - -# Build. -# -$(default): $(addprefix $(out_base)/,$(addsuffix /,$(build_examples))) - -# Install & Dist. -# -$(install) $(dist) $(dist-win): path := $(subst $(src_root)/,,$(src_base)) - -$(install): $(addprefix $(out_base)/,$(addsuffix /.install,$(all_examples))) - $(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README) - -$(dist): $(addprefix $(out_base)/,$(addsuffix /.dist,$(all_examples))) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README) - -$(dist-win): $(addprefix $(out_base)/,$(addsuffix /.dist-win,$(all_examples))) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt) - $(call message,,todos $(dist_prefix)/$(path)/README.txt) - -# Clean. -# -$(clean): $(addprefix $(out_base)/,$(addsuffix /.clean,$(build_examples))) - -$(call include,$(bld_root)/install.make) - -ifneq ($(filter $(MAKECMDGOALS),dist dist-win install),) -$(foreach e,$(all_examples),$(call import,$(src_base)/$e/makefile)) -else -$(foreach e,$(build_examples),$(call import,$(src_base)/$e/makefile)) -endif diff --git a/examples/cxx/tree/order/mixed/README b/examples/cxx/tree/order/mixed/README deleted file mode 100644 index e66c1ad..0000000 --- a/examples/cxx/tree/order/mixed/README +++ /dev/null @@ -1,45 +0,0 @@ -This example shows how to use ordered types to capture mixed content -text and to maintain order information between elements and text. - -In this example we use mixed content model to describe text with -embedded links in the form: - - This paragraph talks about time. - -The example transforms such text into plain text with references in -the form: - - This paragraph talks about time[uri]. - -It also saves the modified text back to XML in order to verify the -element and text order. - -The example consists of the following files: - -text.xsd - XML Schema which describes "text with links" instance documents. - -text.xml - Sample XML instance document. - -text.hxx -text.cxx - C++ types that represent the given vocabulary as well as a set of - parsing and serialization functions. These are generated by XSD - from text.xsd. Note that the --ordered-type-mixed option is used - to indicate to the XSD compiler that all types with mixed content - should be automatically treated as ordered. - -driver.cxx - Driver for the example. It first calls one of the parsing functions - that constructs the object model from the input XML file. It then - iterates over the text and elements in the content order to convert - the document to its plain text representation. The driver then adds - another paragraph of text and a link to the object model while showing - how to maintain the content order. Finally, it saves the modified - text back to XML to verify that the content order is preserved in - the output document. - -To run the example on the sample XML instance document simply execute: - -$ ./driver text.xml diff --git a/examples/cxx/tree/order/mixed/driver.cxx b/examples/cxx/tree/order/mixed/driver.cxx deleted file mode 100644 index 9606b67..0000000 --- a/examples/cxx/tree/order/mixed/driver.cxx +++ /dev/null @@ -1,89 +0,0 @@ -// file : examples/cxx/tree/order/mixed/driver.cxx -// copyright : not copyrighted - public domain - -#include // std::auto_ptr -#include -#include - -#include "text.hxx" - -using std::cerr; -using std::endl; - -int -main (int argc, char* argv[]) -{ - if (argc != 2) - { - cerr << "usage: " << argv[0] << " text.xml" << endl; - return 1; - } - - try - { - std::auto_ptr t (text_ (argv[1])); - - // Print what we've got in content order. - // - for (text::content_order_const_iterator i (t->content_order ().begin ()); - i != t->content_order ().end (); - ++i) - { - switch (i->id) - { - case text::a_id: - { - const anchor& a (t->a ()[i->index]); - cerr << a << "[" << a.href () << "]"; - break; - } - case text::text_content_id: - { - const xml_schema::string& s (t->text_content ()[i->index]); - cerr << s; - break; - } - default: - { - assert (false); // Unknown content id. - } - } - } - - cerr << endl; - - // Modify the document. Note that we have to update both the content - // itself and content order sequences. - // - typedef text::content_order_type order_type; - - text::content_order_sequence& co (t->content_order ()); - text::text_content_sequence& tc (t->text_content ()); - - tc.push_back ("The last paragraph doesn't talk about "); - co.push_back (order_type (text::text_content_id, tc.size () - 1)); - - t->a ().push_back (anchor ("anything", "http://en.wikipedia.org")); - co.push_back (order_type (text::a_id, t->a ().size () - 1)); - - tc.push_back (" in particular.\n\n"); - co.push_back (order_type (text::text_content_id, tc.size () - 1)); - - // Serialize the modified document back to XML. - // - xml_schema::namespace_infomap map; - - map[""].schema = "text.xsd"; - - text_ (std::cout, - *t, - map, - "UTF-8", - xml_schema::flags::dont_pretty_print); - } - catch (const xml_schema::exception& e) - { - cerr << e << endl; - return 1; - } -} diff --git a/examples/cxx/tree/order/mixed/makefile b/examples/cxx/tree/order/mixed/makefile deleted file mode 100644 index 26e2783..0000000 --- a/examples/cxx/tree/order/mixed/makefile +++ /dev/null @@ -1,98 +0,0 @@ -# file : examples/cxx/tree/order/mixed/makefile -# license : GNU GPL v2 + exceptions; see accompanying LICENSE file - -include $(dir $(lastword $(MAKEFILE_LIST)))../../../../../build/bootstrap.make - -xsd := text.xsd -cxx := driver.cxx - -obj := $(addprefix $(out_base)/,$(cxx:.cxx=.o) $(xsd:.xsd=.o)) -dep := $(obj:.o=.o.d) - -driver := $(out_base)/driver -install := $(out_base)/.install -dist := $(out_base)/.dist -dist-win := $(out_base)/.dist-win -clean := $(out_base)/.clean - -# Import. -# -$(call import,\ - $(scf_root)/import/libxerces-c/stub.make,\ - l: xerces_c.l,cpp-options: xerces_c.l.cpp-options) - -# Build. -# -$(driver): $(obj) $(xerces_c.l) -lnsl - -$(obj) $(dep): cpp_options := -I$(out_base) -I$(src_base) -I$(src_root)/libxsd -$(obj) $(dep): $(xerces_c.l.cpp-options) - -genf := $(xsd:.xsd=.hxx) $(xsd:.xsd=.ixx) $(xsd:.xsd=.cxx) -gen := $(addprefix $(out_base)/,$(genf)) - -$(gen): xsd := $(out_root)/xsd/xsd -$(gen): xsd_options += --generate-serialization --ordered-type-mixed -$(gen): $(out_root)/xsd/xsd - -$(call include-dep,$(dep),$(obj),$(gen)) - -# Convenience alias for default target. -# -$(out_base)/: $(driver) - - -# Install & Dist. -# -dist-common := $(out_base)/.dist-common - -$(install) $(dist) $(dist-win) $(dist-common): path := $(subst $(src_root)/,,$(src_base)) - -$(install): - $(call install-data,$(src_base)/README,$(install_doc_dir)/xsd/$(path)/README) - $(call install-data,$(src_base)/driver.cxx,$(install_doc_dir)/xsd/$(path)/driver.cxx) - $(call install-data,$(src_base)/text.xsd,$(install_doc_dir)/xsd/$(path)/text.xsd) - $(call install-data,$(src_base)/text.xml,$(install_doc_dir)/xsd/$(path)/text.xml) - -$(dist-common): - $(call install-data,$(src_base)/driver.cxx,$(dist_prefix)/$(path)/driver.cxx) - $(call install-data,$(src_base)/text.xsd,$(dist_prefix)/$(path)/text.xsd) - $(call install-data,$(src_base)/text.xml,$(dist_prefix)/$(path)/text.xml) - -$(dist): $(dist-common) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README) - -$(dist-win): $(dist-common) - $(call install-data,$(src_base)/README,$(dist_prefix)/$(path)/README.txt) - $(call message,,todos $(dist_prefix)/$(path)/README.txt) - -# Clean. -# -$(clean): $(driver).o.clean \ - $(addsuffix .cxx.clean,$(obj)) \ - $(addsuffix .cxx.clean,$(dep)) \ - $(addprefix $(out_base)/,$(xsd:.xsd=.cxx.xsd.clean)) - -# Generated .gitignore. -# -ifeq ($(out_base),$(src_base)) -$(gen): | $(out_base)/.gitignore -$(driver): | $(out_base)/.gitignore - -$(out_base)/.gitignore: files := driver $(genf) -$(clean): $(out_base)/.gitignore.clean - -$(call include,$(bld_root)/git/gitignore.make) -endif - -# How to. -# -$(call include,$(bld_root)/cxx/o-e.make) -$(call include,$(bld_root)/cxx/cxx-o.make) -$(call include,$(bld_root)/cxx/cxx-d.make) -$(call include,$(bld_root)/install.make) -$(call include,$(scf_root)/xsd/tree/xsd-cxx.make) - -# Dependencies. -# -$(call import,$(src_root)/xsd/makefile) diff --git a/examples/cxx/tree/order/mixed/text.xml b/examples/cxx/tree/order/mixed/text.xml deleted file mode 100644 index ac80159..0000000 --- a/examples/cxx/tree/order/mixed/text.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - -The first paragraph of this text talks about time. - -And this paragraph talks about space. - - diff --git a/examples/cxx/tree/order/mixed/text.xsd b/examples/cxx/tree/order/mixed/text.xsd deleted file mode 100644 index e45abcd..0000000 --- a/examples/cxx/tree/order/mixed/text.xsd +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - -- cgit v1.1