diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2010-04-14 17:22:48 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2010-04-14 17:22:48 +0200 |
commit | ad02b4ec2d8b0044e03ae5f39e75564118d7ce70 (patch) | |
tree | a3d72e0df553a2efb197142cb9f3480f19b376d2 /xsd/cxx/tree/elements.hxx | |
parent | 7207d957dcc2425fc89bab11efd6c5941d630956 (diff) |
Do not suppress from-base c-tors for hierarchies with custom types
Diffstat (limited to 'xsd/cxx/tree/elements.hxx')
-rw-r--r-- | xsd/cxx/tree/elements.hxx | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/xsd/cxx/tree/elements.hxx b/xsd/cxx/tree/elements.hxx index 083ed09..d72cfd1 100644 --- a/xsd/cxx/tree/elements.hxx +++ b/xsd/cxx/tree/elements.hxx @@ -1424,16 +1424,23 @@ namespace CXX traverse (SemanticGraph::Complex& c); private: + Boolean& generate_; + Boolean custom_; + // Note that we are not interested in anyAttribute since it is always // mapped to a sequence. // - struct Traverser: Traversal::Complex, + struct Traverser: Traversal::Type, + Traversal::Complex, Traversal::Element, Traversal::Attribute, Traversal::Any, Context { - Traverser (Context& c, Boolean& generate); + Traverser (Context& c, Boolean& generate, Boolean& custom); + + virtual Void + traverse (SemanticGraph::Type&); virtual Void traverse (SemanticGraph::Complex&); @@ -1449,6 +1456,7 @@ namespace CXX private: Boolean& generate_; + Boolean& custom_; private: Traversal::Inherits inherits_; |