From 6f395f9f769866a04f6949cb7ed14f93d90cf728 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 13 Oct 2010 15:38:11 +0200 Subject: Map anySimpleType to a string --- xsde/cxx/hybrid/elements.hxx | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'xsde/cxx/hybrid/elements.hxx') 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. -- cgit v1.1