diff options
Diffstat (limited to 'TAO/TAO_IDL/include/ast_native.h')
-rw-r--r-- | TAO/TAO_IDL/include/ast_native.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/include/ast_native.h b/TAO/TAO_IDL/include/ast_native.h new file mode 100644 index 00000000000..5813d34d02a --- /dev/null +++ b/TAO/TAO_IDL/include/ast_native.h @@ -0,0 +1,45 @@ +// This may look like C, but it's really -*- C++ -*- +// $Id$ + +#ifndef _AST_NATIVE_H_ +#define _AST_NATIVE_H_ + +#include "ast_exception.h" + +// Representation of "native" IDL type. It may be used as a +// return type, parameter type, or in an operation's +// exception list. This last usage creates special problems +// with both syntax checking and code generation. Letting +// this class inherit from AST_Exception is the most seamless +// way to handle it, and does not affect the other use cases. +class TAO_IDL_FE_Export AST_Native : public virtual AST_Exception +{ +public: + // Operations. + + // Constructor(s). + + AST_Native (void); + // Default constructor. + + AST_Native (UTL_ScopedName *n); + // Constructor that initializes the scoped name. + + virtual ~AST_Native (void); + // Destructor. + + virtual void destroy (void); + // Cleanup. + + // Narrowing. + DEF_NARROW_METHODS1(AST_Native, AST_Exception); + DEF_NARROW_FROM_DECL(AST_Native); + + // AST Dumping. + virtual void dump (ACE_OSTREAM_TYPE &o); + + // Visiting. + virtual int ast_accept (ast_visitor *visitor); +}; + +#endif /* AST_NATIVE_H */ |