diff options
author | Boris Kolpackov <boris@codesynthesis.com> | 2010-10-13 15:38:11 +0200 |
---|---|---|
committer | Boris Kolpackov <boris@codesynthesis.com> | 2010-10-13 15:38:11 +0200 |
commit | 6f395f9f769866a04f6949cb7ed14f93d90cf728 (patch) | |
tree | d1f8343e7b41fc1895676ad4248a5e4942f9172b /xsde/cxx/hybrid/elements.hxx | |
parent | c1f49aa87678c512ac37575365a6676727e5f20a (diff) |
Map anySimpleType to a string
Diffstat (limited to 'xsde/cxx/hybrid/elements.hxx')
-rw-r--r-- | xsde/cxx/hybrid/elements.hxx | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/xsde/cxx/hybrid/elements.hxx b/xsde/cxx/hybrid/elements.hxx index 7bd8bd1..50f0931 100644 --- a/xsde/cxx/hybrid/elements.hxx +++ b/xsde/cxx/hybrid/elements.hxx @@ -798,7 +798,9 @@ namespace CXX // // - struct StringType: Traversal::Fundamental::String, + struct StringType: Traversal::AnySimpleType, + + Traversal::Fundamental::String, Traversal::Fundamental::NormalizedString, Traversal::Fundamental::Token, Traversal::Fundamental::Name, @@ -816,6 +818,12 @@ namespace CXX } virtual Void + traverse (SemanticGraph::AnySimpleType&) + { + r_ = true; + } + + virtual Void traverse (SemanticGraph::Fundamental::String&) { r_ = true; @@ -1098,9 +1106,12 @@ namespace CXX } virtual Void - traverse (SemanticGraph::AnySimpleType& t) + traverse (SemanticGraph::AnySimpleType&) { - type (t); + if (stl || use_ != base) + string_type (); + else + os << xs_ns_ << "::any_simple_type_base"; } // Boolean. @@ -1688,7 +1699,7 @@ namespace CXX virtual Void traverse (SemanticGraph::AnySimpleType& t) { - type (t); + string_type (t); } // Boolean. |