diff options
Diffstat (limited to 'TAO/TAO_IDL/be_include/be_visitor_typedef.h')
-rw-r--r-- | TAO/TAO_IDL/be_include/be_visitor_typedef.h | 246 |
1 files changed, 8 insertions, 238 deletions
diff --git a/TAO/TAO_IDL/be_include/be_visitor_typedef.h b/TAO/TAO_IDL/be_include/be_visitor_typedef.h index 7e5370057db..206410cb13f 100644 --- a/TAO/TAO_IDL/be_include/be_visitor_typedef.h +++ b/TAO/TAO_IDL/be_include/be_visitor_typedef.h @@ -25,243 +25,13 @@ #include "be_visitor.h" #include "be_visitor_scope.h" -class be_visitor_typedef : public be_visitor_decl -{ - // - // = TITLE - // be_visitor_typedef - // - // = DESCRIPTION - // This is a concrete visitor for typedef that abstracts all common tasks - // - -public: - be_visitor_typedef (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // must be overridden - - // =visit methods on all elements syntactically valid as types that can be - // typedefed. - - virtual int visit_array (be_array *node); - // visit a array - - virtual int visit_enum (be_enum *node); - // visit an enum - - virtual int visit_predefined_type (be_predefined_type *node); - // visit predefined type node - - virtual int visit_string (be_string *node); - // visit a typedef - - virtual int visit_sequence (be_sequence *node); - // visit a sequence - - virtual int visit_structure (be_structure *node); - // visit a structure - - virtual int visit_union (be_union *node); - // visit a union - -}; - -// we need derived typedef visitors for the client files. - -class be_visitor_typedef_ch : public be_visitor_typedef -{ - // - // = TITLE - // be_visitor_typedef_ch - // - // = DESCRIPTION - // This is a concrete visitor to generate the client header for typedef - // - // -public: - be_visitor_typedef_ch (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef_ch (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // visit typedef. We provide code for this method in the derived class - - // =visit methods on all elements syntactically valid as types that can be - // typedefed. - - virtual int visit_array (be_array *node); - // visit a array - - virtual int visit_enum (be_enum *node); - // visit an enum - - virtual int visit_interface (be_interface *node); - // visit an interface; - - virtual int visit_predefined_type (be_predefined_type *node); - // visit predefined type node - - virtual int visit_string (be_string *node); - // visit a typedef - - virtual int visit_sequence (be_sequence *node); - // visit a sequence - - virtual int visit_structure (be_structure *node); - // visit a structure - - virtual int visit_union (be_union *node); - // visit a union - -}; - -class be_visitor_typedef_ci : public be_visitor_typedef -{ - // - // = TITLE - // be_visitor_typedef_sh - // - // = DESCRIPTION - // This is a concrete visitor to generate the server header for typedef - // - // -public: - be_visitor_typedef_ci (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef_ci (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // visit typedef. We provide code for this method in the derived class - - // =visit methods on all elements syntactically valid as types that can be - // typedefed. - - virtual int visit_array (be_array *node); - // visit a array - - virtual int visit_sequence (be_sequence *node); - // visit a sequence - - virtual int visit_structure (be_structure *node); - // visit a structure - - virtual int visit_union (be_union *node); - // visit a union - -}; - -class be_visitor_typedef_cs : public be_visitor_typedef -{ - // - // = TITLE - // be_visitor_typedef_cs - // - // = DESCRIPTION - // This is a concrete visitor to generate the server header for typedef - // - // -public: - be_visitor_typedef_cs (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef_cs (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // visit typedef. We provide code for this method in the derived class - -}; - -class be_visitor_typedef_any_op_ch : public be_visitor_typedef -{ - // - // = TITLE - // be_visitor_typedef_any_op_ch - // - // = DESCRIPTION - // This is a concrete visitor for typedef that generates the Any operator - // declarations and implementations - // - -public: - be_visitor_typedef_any_op_ch (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef_any_op_ch (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // visit typedef - - // =visit methods on all elements syntactically valid as types that can be - // typedefed. - - virtual int visit_array (be_array *node); - // visit a array - - virtual int visit_enum (be_enum *node); - // visit an enum - - virtual int visit_sequence (be_sequence *node); - // visit a sequence - - virtual int visit_structure (be_structure *node); - // visit a structure - - virtual int visit_union (be_union *node); - // visit a union - -}; - -class be_visitor_typedef_any_op_cs : public be_visitor_typedef -{ - // - // = TITLE - // be_visitor_typedef_any_op_cs - // - // = DESCRIPTION - // This is a concrete visitor for typedef that generates the Any operator - // declarations and implementations - // - -public: - be_visitor_typedef_any_op_cs (be_visitor_context *ctx); - // constructor - - ~be_visitor_typedef_any_op_cs (void); - // destructor - - virtual int visit_typedef (be_typedef *node); - // visit typedef - - // =visit methods on all elements syntactically valid as types that can be - // typedefed. - - virtual int visit_array (be_array *node); - // visit a array - - virtual int visit_enum (be_enum *node); - // visit an enum - - virtual int visit_sequence (be_sequence *node); - // visit a sequence - - virtual int visit_structure (be_structure *node); - // visit a structure - - virtual int visit_union (be_union *node); - // visit a union - -}; - +// generic visitor +#include "be_visitor_typedef/typedef.h" +// concrete visitors +#include "be_visitor_typedef/typedef_ch.h" +#include "be_visitor_typedef/typedef_ci.h" +#include "be_visitor_typedef/typedef_cs.h" +#include "be_visitor_typedef/any_op_ch.h" +#include "be_visitor_typedef/any_op_cs.h" #endif // TAO_BE_VISITOR_TYPEDEF_H |