diff options
Diffstat (limited to 'libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx')
-rw-r--r-- | libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx | 120 |
1 files changed, 48 insertions, 72 deletions
diff --git a/libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx b/libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx index 08953bc..dd65e56 100644 --- a/libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx +++ b/libxsd-frontend/xsd-frontend/semantic-graph/compositors.cxx @@ -1,124 +1,100 @@ // file : xsd-frontend/semantic-graph/compositor.cxx -// author : Boris Kolpackov <boris@codesynthesis.com> -// copyright : Copyright (c) 2006-2010 Code Synthesis Tools CC +// copyright : Copyright (c) 2006-2014 Code Synthesis Tools CC // license : GNU GPL v2 + exceptions; see accompanying LICENSE file +#include <cutl/compiler/type-info.hxx> + #include <xsd-frontend/semantic-graph/compositors.hxx> namespace XSDFrontend { namespace SemanticGraph { - namespace RTTI = Cult::RTTI; + // ContainsCompositor + // + ContainsCompositor:: + ContainsCompositor (unsigned long min, unsigned long max) + : compositor_ (0), container_ (0), min_ (min), max_ (max) + { + } - using RTTI::Access; - using RTTI::TypeInfo; + // All + // + All:: + All (Path const& file, unsigned long line, unsigned long column) + : Node (file, line, column) + { + } + // Choice + // + Choice:: + Choice (Path const& file, unsigned long line, unsigned long column) + : Node (file, line, column) + { + } - // ContainsCompositor + // Sequence // + Sequence:: + Sequence (Path const& file, unsigned long line, unsigned long column) + : Node (file, line, column) + { + } + namespace { + using compiler::type_info; + struct ContainsCompositorInit { ContainsCompositorInit () { - TypeInfo ti (typeid (ContainsCompositor)); - ti.add_base (Access::public_, true, typeid (Edge)); - RTTI::insert (ti); + type_info ti (typeid (ContainsCompositor)); + ti.add_base (typeid (Edge)); + insert (ti); } - } contains_compositor_init_; - } - ContainsCompositor:: - ContainsCompositor (UnsignedLong min, UnsignedLong max) - : compositor_ (0), container_ (0), min_ (min), max_ (max) - { - } - - // Compositor - // - namespace - { struct CompositorInit { CompositorInit () { - TypeInfo ti (typeid (Compositor)); - ti.add_base (Access::public_, true, typeid (Particle)); - RTTI::insert (ti); + type_info ti (typeid (Compositor)); + ti.add_base (typeid (Particle)); + insert (ti); } - } compositor_init_; - } - - // All - // - namespace - { struct AllInit { AllInit () { - TypeInfo ti (typeid (All)); - ti.add_base (Access::public_, true, typeid (Compositor)); - RTTI::insert (ti); + type_info ti (typeid (All)); + ti.add_base (typeid (Compositor)); + insert (ti); } - } all_init_; - } - All:: - All (Path const& file, UnsignedLong line, UnsignedLong column) - : Node (file, line, column) - { - } - - - // Choice - // - namespace - { struct ChoiceInit { ChoiceInit () { - TypeInfo ti (typeid (Choice)); - ti.add_base (Access::public_, true, typeid (Compositor)); - RTTI::insert (ti); + type_info ti (typeid (Choice)); + ti.add_base (typeid (Compositor)); + insert (ti); } - } choice_init_; - } - Choice:: - Choice (Path const& file, UnsignedLong line, UnsignedLong column) - : Node (file, line, column) - { - } - - // Sequence - // - namespace - { struct SequenceInit { SequenceInit () { - TypeInfo ti (typeid (Sequence)); - ti.add_base (Access::public_, true, typeid (Compositor)); - RTTI::insert (ti); + type_info ti (typeid (Sequence)); + ti.add_base (typeid (Compositor)); + insert (ti); } - } sequence_init_; } - - Sequence:: - Sequence (Path const& file, UnsignedLong line, UnsignedLong column) - : Node (file, line, column) - { - } } } |