// This file is generated by omniidl (C++ backend)- omniORB_4_0. Do not edit.
#ifndef __ir_operators_hh__
#define __ir_operators_hh__

inline void operator >>=(CORBA::DefinitionKind _e, cdrStream& s) {
  ::operator>>=((CORBA::ULong)_e, s);
}

inline void operator <<= (CORBA::DefinitionKind& _e, cdrStream& s) {
  CORBA::ULong _0RL_e;
  ::operator<<=(_0RL_e,s);
  switch (_0RL_e) {
    case CORBA::dk_none:

    case CORBA::dk_all:

    case CORBA::dk_Attribute:

    case CORBA::dk_Constant:

    case CORBA::dk_Exception:

    case CORBA::dk_Interface:

    case CORBA::dk_Module:

    case CORBA::dk_Operation:

    case CORBA::dk_Typedef:

    case CORBA::dk_Alias:

    case CORBA::dk_Struct:

    case CORBA::dk_Union:

    case CORBA::dk_Enum:

    case CORBA::dk_Primitive:

    case CORBA::dk_String:

    case CORBA::dk_Sequence:

    case CORBA::dk_Array:

    case CORBA::dk_Repository:

    case CORBA::dk_Wstring:

    case CORBA::dk_Fixed:

    case CORBA::dk_Value:

    case CORBA::dk_ValueBox:

    case CORBA::dk_Member:

    case CORBA::dk_Native:

    case CORBA::dk_AbstractInterface:


    _e = (CORBA::DefinitionKind) _0RL_e;
    break;
  default:
    OMNIORB_THROW(MARSHAL,_OMNI_NS(MARSHAL_InvalidEnumValue),
                  (CORBA::CompletionStatus)s.completion());
  }
}

void operator<<=(CORBA::Any& _a, CORBA::DefinitionKind _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::DefinitionKind& _s);

void operator<<=(CORBA::Any& _a, CORBA::IRObject_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::IRObject_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::IRObject_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::Contained::Description& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::Contained::Description* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Contained::Description*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::Contained::Description*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::Contained_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::Contained_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Contained_ptr& _s);

extern void operator <<= (CORBA::Any& _a, const CORBA::InterfaceDefSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::InterfaceDefSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::InterfaceDefSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::InterfaceDefSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ValueDefSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ValueDefSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ValueDefSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ValueDefSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::AbstractInterfaceDefSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::AbstractInterfaceDefSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::AbstractInterfaceDefSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::AbstractInterfaceDefSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ContainedSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ContainedSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ContainedSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ContainedSeq*& _sp);

extern void operator<<=(CORBA::Any& _a, const CORBA::Initializer& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::Initializer* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Initializer*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::Initializer*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::InitializerSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::InitializerSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::InitializerSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::InitializerSeq*& _sp);

extern void operator<<=(CORBA::Any& _a, const CORBA::Container::Description& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::Container::Description* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Container::Description*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::Container::Description*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::Container::DescriptionSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::Container::DescriptionSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::Container::DescriptionSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::Container::DescriptionSeq*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::Container_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::Container_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Container_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::IDLType_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::IDLType_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::IDLType_ptr& _s);

inline void operator >>=(CORBA::PrimitiveKind _e, cdrStream& s) {
  ::operator>>=((CORBA::ULong)_e, s);
}

inline void operator <<= (CORBA::PrimitiveKind& _e, cdrStream& s) {
  CORBA::ULong _0RL_e;
  ::operator<<=(_0RL_e,s);
  switch (_0RL_e) {
    case CORBA::pk_null:

    case CORBA::pk_void:

    case CORBA::pk_short:

    case CORBA::pk_long:

    case CORBA::pk_ushort:

    case CORBA::pk_ulong:

    case CORBA::pk_float:

    case CORBA::pk_double:

    case CORBA::pk_boolean:

    case CORBA::pk_char:

    case CORBA::pk_octet:

    case CORBA::pk_any:

    case CORBA::pk_TypeCode:

    case CORBA::pk_Principal:

    case CORBA::pk_string:

    case CORBA::pk_objref:

    case CORBA::pk_longlong:

    case CORBA::pk_ulonglong:

    case CORBA::pk_longdouble:

    case CORBA::pk_wchar:

    case CORBA::pk_wstring:

    case CORBA::pk_value_base:


    _e = (CORBA::PrimitiveKind) _0RL_e;
    break;
  default:
    OMNIORB_THROW(MARSHAL,_OMNI_NS(MARSHAL_InvalidEnumValue),
                  (CORBA::CompletionStatus)s.completion());
  }
}

void operator<<=(CORBA::Any& _a, CORBA::PrimitiveKind _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::PrimitiveKind& _s);

void operator<<=(CORBA::Any& _a, CORBA::Repository_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::Repository_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::Repository_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::ModuleDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ModuleDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ModuleDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ModuleDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ModuleDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ModuleDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ModuleDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::ConstantDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ConstantDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ConstantDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ConstantDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ConstantDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ConstantDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ConstantDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::TypedefDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::TypedefDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::TypedefDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::TypeDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::TypeDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::TypeDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::TypeDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::StructDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::StructDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::StructDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::UnionDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::UnionDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::UnionDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::EnumDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::EnumDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::EnumDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::AliasDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::AliasDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::AliasDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::NativeDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::NativeDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::NativeDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::PrimitiveDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::PrimitiveDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::PrimitiveDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::StringDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::StringDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::StringDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::WstringDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::WstringDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::WstringDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::FixedDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::FixedDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::FixedDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::SequenceDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::SequenceDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::SequenceDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::ArrayDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ArrayDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ArrayDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::ExceptionDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ExceptionDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ExceptionDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ExceptionDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ExceptionDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ExceptionDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ExceptionDescription*& _sp);

inline void operator >>=(CORBA::AttributeMode _e, cdrStream& s) {
  ::operator>>=((CORBA::ULong)_e, s);
}

inline void operator <<= (CORBA::AttributeMode& _e, cdrStream& s) {
  CORBA::ULong _0RL_e;
  ::operator<<=(_0RL_e,s);
  switch (_0RL_e) {
    case CORBA::ATTR_NORMAL:

    case CORBA::ATTR_READONLY:


    _e = (CORBA::AttributeMode) _0RL_e;
    break;
  default:
    OMNIORB_THROW(MARSHAL,_OMNI_NS(MARSHAL_InvalidEnumValue),
                  (CORBA::CompletionStatus)s.completion());
  }
}

void operator<<=(CORBA::Any& _a, CORBA::AttributeMode _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::AttributeMode& _s);

void operator<<=(CORBA::Any& _a, CORBA::AttributeDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::AttributeDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::AttributeDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::AttributeDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::AttributeDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::AttributeDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::AttributeDescription*& _sp);

inline void operator >>=(CORBA::OperationMode _e, cdrStream& s) {
  ::operator>>=((CORBA::ULong)_e, s);
}

inline void operator <<= (CORBA::OperationMode& _e, cdrStream& s) {
  CORBA::ULong _0RL_e;
  ::operator<<=(_0RL_e,s);
  switch (_0RL_e) {
    case CORBA::OP_NORMAL:

    case CORBA::OP_ONEWAY:


    _e = (CORBA::OperationMode) _0RL_e;
    break;
  default:
    OMNIORB_THROW(MARSHAL,_OMNI_NS(MARSHAL_InvalidEnumValue),
                  (CORBA::CompletionStatus)s.completion());
  }
}

void operator<<=(CORBA::Any& _a, CORBA::OperationMode _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::OperationMode& _s);

inline void operator >>=(CORBA::ParameterMode _e, cdrStream& s) {
  ::operator>>=((CORBA::ULong)_e, s);
}

inline void operator <<= (CORBA::ParameterMode& _e, cdrStream& s) {
  CORBA::ULong _0RL_e;
  ::operator<<=(_0RL_e,s);
  switch (_0RL_e) {
    case CORBA::PARAM_IN:

    case CORBA::PARAM_OUT:

    case CORBA::PARAM_INOUT:


    _e = (CORBA::ParameterMode) _0RL_e;
    break;
  default:
    OMNIORB_THROW(MARSHAL,_OMNI_NS(MARSHAL_InvalidEnumValue),
                  (CORBA::CompletionStatus)s.completion());
  }
}

void operator<<=(CORBA::Any& _a, CORBA::ParameterMode _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ParameterMode& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ParameterDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ParameterDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ParameterDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ParameterDescription*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ParDescriptionSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ParDescriptionSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ParDescriptionSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ParDescriptionSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ContextIdSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ContextIdSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ContextIdSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ContextIdSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ExceptionDefSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ExceptionDefSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ExceptionDefSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ExceptionDefSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ExcDescriptionSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ExcDescriptionSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ExcDescriptionSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ExcDescriptionSeq*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::OperationDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::OperationDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::OperationDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::OperationDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::OperationDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::OperationDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::OperationDescription*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::RepositoryIdSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::RepositoryIdSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::RepositoryIdSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::RepositoryIdSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::OpDescriptionSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::OpDescriptionSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::OpDescriptionSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::OpDescriptionSeq*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::AttrDescriptionSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::AttrDescriptionSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::AttrDescriptionSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::AttrDescriptionSeq*& _sp);

extern void operator<<=(CORBA::Any& _a, const CORBA::InterfaceDef::FullInterfaceDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::InterfaceDef::FullInterfaceDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::InterfaceDef::FullInterfaceDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::InterfaceDef::FullInterfaceDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::InterfaceDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::InterfaceDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::InterfaceDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::InterfaceDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::InterfaceDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::InterfaceDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::InterfaceDescription*& _sp);

extern void operator<<=(CORBA::Any& _a, const CORBA::ValueMember& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ValueMember* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueMember*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ValueMember*& _sp);

extern void operator <<= (CORBA::Any& _a, const CORBA::ValueMemberSeq& _s);
inline void operator <<= (CORBA::Any& _a, CORBA::ValueMemberSeq* _sp) {
  _a <<= *_sp;
  delete _sp;
}
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, CORBA::ValueMemberSeq*& _sp);
extern _CORBA_Boolean operator >>= (const CORBA::Any& _a, const CORBA::ValueMemberSeq*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::ValueMemberDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ValueMemberDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueMemberDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ValueDef::FullValueDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ValueDef::FullValueDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueDef::FullValueDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ValueDef::FullValueDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::ValueDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ValueDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueDef_ptr& _s);

extern void operator<<=(CORBA::Any& _a, const CORBA::ValueDescription& _s);
extern void operator<<=(CORBA::Any& _a, CORBA::ValueDescription* _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueDescription*& _sp);
extern CORBA::Boolean operator>>=(const CORBA::Any& _a, const CORBA::ValueDescription*& _sp);

void operator<<=(CORBA::Any& _a, CORBA::ValueBoxDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::ValueBoxDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::ValueBoxDef_ptr& _s);

void operator<<=(CORBA::Any& _a, CORBA::AbstractInterfaceDef_ptr _s);
void operator<<=(CORBA::Any& _a, CORBA::AbstractInterfaceDef_ptr* _s);
CORBA::Boolean operator>>=(const CORBA::Any& _a, CORBA::AbstractInterfaceDef_ptr& _s);

inline void
CORBA::IRObject::_marshalObjRef(::CORBA::IRObject_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::Contained::_marshalObjRef(::CORBA::Contained_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::Container::_marshalObjRef(::CORBA::Container_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::IDLType::_marshalObjRef(::CORBA::IDLType_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::Repository::_marshalObjRef(::CORBA::Repository_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ModuleDef::_marshalObjRef(::CORBA::ModuleDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ConstantDef::_marshalObjRef(::CORBA::ConstantDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::TypedefDef::_marshalObjRef(::CORBA::TypedefDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::StructDef::_marshalObjRef(::CORBA::StructDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::UnionDef::_marshalObjRef(::CORBA::UnionDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::EnumDef::_marshalObjRef(::CORBA::EnumDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::AliasDef::_marshalObjRef(::CORBA::AliasDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::NativeDef::_marshalObjRef(::CORBA::NativeDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::PrimitiveDef::_marshalObjRef(::CORBA::PrimitiveDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::StringDef::_marshalObjRef(::CORBA::StringDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::WstringDef::_marshalObjRef(::CORBA::WstringDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::FixedDef::_marshalObjRef(::CORBA::FixedDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::SequenceDef::_marshalObjRef(::CORBA::SequenceDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ArrayDef::_marshalObjRef(::CORBA::ArrayDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ExceptionDef::_marshalObjRef(::CORBA::ExceptionDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::AttributeDef::_marshalObjRef(::CORBA::AttributeDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::OperationDef::_marshalObjRef(::CORBA::OperationDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::InterfaceDef::_marshalObjRef(::CORBA::InterfaceDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ValueMemberDef::_marshalObjRef(::CORBA::ValueMemberDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ValueDef::_marshalObjRef(::CORBA::ValueDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::ValueBoxDef::_marshalObjRef(::CORBA::ValueBoxDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


inline void
CORBA::AbstractInterfaceDef::_marshalObjRef(::CORBA::AbstractInterfaceDef_ptr obj, cdrStream& s) {
  omniObjRef::_marshal(obj->_PR_getobj(),s);
}


#endif

