diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2009-03-26 17:09:53 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2009-03-26 17:09:53 +0200 |
commit | e4c22d3686da0e973e21eae0561c1169c0eeff36 (patch) | |
tree | 0a49e9167edc88938b0287949080931314e8afea /xsde/cxx/hybrid/aggregate-elements.hxx | |
parent | 0d62005a3ff3b62d02c2eb3fd8644e0e19b202e8 (diff) |
Implement support for XML Schema polymorphism in C++/Hybrid
examples/cxx/hybrid/polyroot/
examples/cxx/hybrid/polymorphism/: new examples
tests/cxx/hybrid/polymorphism/: new tests
Diffstat (limited to 'xsde/cxx/hybrid/aggregate-elements.hxx')
-rw-r--r-- | xsde/cxx/hybrid/aggregate-elements.hxx | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/xsde/cxx/hybrid/aggregate-elements.hxx b/xsde/cxx/hybrid/aggregate-elements.hxx new file mode 100644 index 0000000..aa4c504 --- /dev/null +++ b/xsde/cxx/hybrid/aggregate-elements.hxx @@ -0,0 +1,31 @@ +// file : xsde/cxx/hybrid/aggregate-elements.hxx +// author : Boris Kolpackov <boris@codesynthesis.com> +// copyright : Copyright (c) 2005-2009 Code Synthesis Tools CC +// license : GNU GPL v2 + exceptions; see accompanying LICENSE file + +#ifndef CXX_HYBRID_AGGREGATE_ELEMENTS_HXX +#define CXX_HYBRID_AGGREGATE_ELEMENTS_HXX + +#include <cult/containers/map.hxx> + +#include <cxx/hybrid/elements.hxx> + +namespace CXX +{ + namespace Hybrid + { + typedef + Cult::Containers::Map<SemanticGraph::Type*, String> + TypeInstanceMap; + + struct InstanceInfo + { + SemanticGraph::Type* type; + String name; + }; + + typedef Cult::Containers::Map<String, InstanceInfo> TypeIdInstanceMap; + } +} + +#endif // CXX_HYBRID_AGGREGATE_ELEMENTS_HXX |