summaryrefslogtreecommitdiff
path: root/TAO/tao/NVList.cpp
diff options
context:
space:
mode:
authorlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-03-24 13:28:35 +0000
committerlevine <levine@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-03-24 13:28:35 +0000
commit098294d3ff4a69abb8fb7d023db325297f7e43af (patch)
tree4353df24a7f8e3e9a0a6fb49eb3b45d6fd7ea05c /TAO/tao/NVList.cpp
parent6a0480358b46379cadd77498043c3ad69f57cb8e (diff)
downloadATCD-098294d3ff4a69abb8fb7d023db325297f7e43af.tar.gz
#include the .i file in the .h/.cpp file instead of corba.h
Diffstat (limited to 'TAO/tao/NVList.cpp')
-rw-r--r--TAO/tao/NVList.cpp22
1 files changed, 21 insertions, 1 deletions
diff --git a/TAO/tao/NVList.cpp b/TAO/tao/NVList.cpp
index 580d828cce5..a6808686f8a 100644
--- a/TAO/tao/NVList.cpp
+++ b/TAO/tao/NVList.cpp
@@ -1,9 +1,13 @@
-// This may look like C, but it's really -*- C++ -*-
+// $Id$
// Implementation of Named Value List and NamedValue classes
#include "tao/corba.h"
+#if !defined (__ACE_INLINE__)
+# include "tao/NVList.i"
+#endif /* ! __ACE_INLINE__ */
+
CORBA::ULong
CORBA_NamedValue::AddRef (void)
{
@@ -273,3 +277,19 @@ CORBA_NVList::add_element (CORBA::Flags flags, CORBA::Environment &env)
return 1; // success
}
+
+// This was inline, but didn't survive the removal of .i #includes
+// from corba.h. env.exception wasn't known. Maybe the circular
+// #includes between corba.h and ORB.h need to be removed.
+CORBA::NamedValue_ptr
+CORBA_NVList::item (CORBA::ULong n, CORBA::Environment &env)
+{
+ env.clear ();
+ if (n >= this->max_) // 0 based indexing
+ {
+ env.exception (new CORBA::TypeCode::Bounds ());
+ return 0;
+ }
+ else
+ return &this->values_ [n];
+}