summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/IFR_Service/ArrayDef_i.h
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-07-06 17:42:57 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2000-07-06 17:42:57 +0000
commita08f2455df890ea3fbd7d6d58cf9131ece8d918d (patch)
treee7c027a1d0a638b28c8410a7c2512d492e2f2036 /TAO/orbsvcs/IFR_Service/ArrayDef_i.h
parent9cff01c309d400257530e7d048b56d421404f784 (diff)
downloadATCD-a08f2455df890ea3fbd7d6d58cf9131ece8d918d.tar.gz
New IFR implementation files.
Diffstat (limited to 'TAO/orbsvcs/IFR_Service/ArrayDef_i.h')
-rw-r--r--TAO/orbsvcs/IFR_Service/ArrayDef_i.h118
1 files changed, 118 insertions, 0 deletions
diff --git a/TAO/orbsvcs/IFR_Service/ArrayDef_i.h b/TAO/orbsvcs/IFR_Service/ArrayDef_i.h
new file mode 100644
index 00000000000..e955280f767
--- /dev/null
+++ b/TAO/orbsvcs/IFR_Service/ArrayDef_i.h
@@ -0,0 +1,118 @@
+/* -*- C++ -*- */
+// $Id$
+
+// ============================================================================
+//
+// = LIBRARY
+// TAO/orbsvcs/IFR_Service
+//
+// = FILENAME
+// ArrayDef_i.h
+//
+// = DESCRIPTION
+// IR::ArrayDef servant class.
+//
+// = AUTHOR
+// Jeff Parsons <parsons@cs.wustl.edu>
+//
+// ============================================================================
+
+#ifndef TAO_ARRAYDEF_I_H
+#define TAO_ARRAYDEF_I_H
+
+#include "IDLType_i.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+#if defined(_MSC_VER)
+#if (_MSC_VER >= 1200)
+#pragma warning(push)
+#endif /* _MSC_VER >= 1200 */
+#pragma warning(disable:4250)
+#endif /* _MSC_VER */
+
+class TAO_ArrayDef_i : public virtual TAO_IDLType_i
+{
+ // = TITLE
+ // TAO_ArrayDef_i
+ //
+ // = DESCRIPTION
+ // Represents an IDL array type.
+ //
+public:
+ TAO_ArrayDef_i (TAO_Repository_i *repo,
+ ACE_Configuration_Section_Key section_key);
+ // Constructor
+
+ virtual ~TAO_ArrayDef_i (void);
+ // Destructor
+
+ virtual IR::DefinitionKind def_kind (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Return our definition kind.
+
+ virtual void destroy (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Remove the repository entry.
+
+ virtual CORBA::TypeCode_ptr type (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::ULong length (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void length (
+ CORBA::ULong length,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual CORBA::TypeCode_ptr element_type (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual IR::IDLType_ptr element_type_def (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+ virtual void element_type_def (
+ IR::IDLType_ptr element_type_def,
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+
+private:
+ void destroy_element_type (
+ CORBA::Environment &ACE_TRY_ENV =
+ TAO_default_environment ()
+ )
+ ACE_THROW_SPEC ((CORBA::SystemException));
+ // Destroys an anonymous non-primitive element type.
+};
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1200)
+#pragma warning(pop)
+#endif /* _MSC_VER */
+
+#endif /* TAO_ARRAYDEF_I_H */
+