// File generated by CPPExt (Transient)
//
//                     Copyright (C) 1991 - 2000 by  
//                      Matra Datavision SA.  All rights reserved.
//  
//                     Copyright (C) 2001 - 2004 by
//                     Open CASCADE SA.  All rights reserved.
// 
// This file is part of the Open CASCADE Technology software.
//
// This software may be distributed and/or modified under the terms and
// conditions of the Open CASCADE Public License as defined by Open CASCADE SA
// and appearing in the file LICENSE included in the packaging of this file.
//  
// This software is distributed on an "AS IS" basis, without warranty of any
// kind, and Open CASCADE SA hereby disclaims all such warranties,
// including without limitation, any warranties of merchantability, fitness
// for a particular purpose or non-infringement. Please see the License for
// the specific terms and conditions governing rights and limitations under the
// License.

#include <ExprIntrp_StackNodeOfStackOfNames.hxx>

#ifndef _Standard_TypeMismatch_HeaderFile
#include <Standard_TypeMismatch.hxx>
#endif

#ifndef _TCollection_AsciiString_HeaderFile
#include <TCollection_AsciiString.hxx>
#endif
#ifndef _ExprIntrp_StackOfNames_HeaderFile
#include <ExprIntrp_StackOfNames.hxx>
#endif
#ifndef _ExprIntrp_StackIteratorOfStackOfNames_HeaderFile
#include <ExprIntrp_StackIteratorOfStackOfNames.hxx>
#endif
//ExprIntrp_StackNodeOfStackOfNames::~ExprIntrp_StackNodeOfStackOfNames() {}
 


Standard_EXPORT Handle_Standard_Type& ExprIntrp_StackNodeOfStackOfNames_Type_()
{

    static Handle_Standard_Type aType1 = STANDARD_TYPE(TCollection_MapNode);
  static Handle_Standard_Type aType2 = STANDARD_TYPE(MMgt_TShared);
  static Handle_Standard_Type aType3 = STANDARD_TYPE(Standard_Transient);
 

  static Handle_Standard_Transient _Ancestors[]= {aType1,aType2,aType3,NULL};
  static Handle_Standard_Type _aType = new Standard_Type("ExprIntrp_StackNodeOfStackOfNames",
			                                 sizeof(ExprIntrp_StackNodeOfStackOfNames),
			                                 1,
			                                 (Standard_Address)_Ancestors,
			                                 (Standard_Address)NULL);

  return _aType;
}


// DownCast method
//   allow safe downcasting
//
const Handle(ExprIntrp_StackNodeOfStackOfNames) Handle(ExprIntrp_StackNodeOfStackOfNames)::DownCast(const Handle(Standard_Transient)& AnObject) 
{
  Handle(ExprIntrp_StackNodeOfStackOfNames) _anOtherObject;

  if (!AnObject.IsNull()) {
     if (AnObject->IsKind(STANDARD_TYPE(ExprIntrp_StackNodeOfStackOfNames))) {
       _anOtherObject = Handle(ExprIntrp_StackNodeOfStackOfNames)((Handle(ExprIntrp_StackNodeOfStackOfNames)&)AnObject);
     }
  }

  return _anOtherObject ;
}
const Handle(Standard_Type)& ExprIntrp_StackNodeOfStackOfNames::DynamicType() const 
{ 
  return STANDARD_TYPE(ExprIntrp_StackNodeOfStackOfNames) ; 
}
//Standard_Boolean ExprIntrp_StackNodeOfStackOfNames::IsKind(const Handle(Standard_Type)& AType) const 
//{ 
//  return (STANDARD_TYPE(ExprIntrp_StackNodeOfStackOfNames) == AType || TCollection_MapNode::IsKind(AType)); 
//}
//Handle_ExprIntrp_StackNodeOfStackOfNames::~Handle_ExprIntrp_StackNodeOfStackOfNames() {}
#define Item TCollection_AsciiString
#define Item_hxx <TCollection_AsciiString.hxx>
#define TCollection_StackNode ExprIntrp_StackNodeOfStackOfNames
#define TCollection_StackNode_hxx <ExprIntrp_StackNodeOfStackOfNames.hxx>
#define TCollection_StackIterator ExprIntrp_StackIteratorOfStackOfNames
#define TCollection_StackIterator_hxx <ExprIntrp_StackIteratorOfStackOfNames.hxx>
#define Handle_TCollection_StackNode Handle_ExprIntrp_StackNodeOfStackOfNames
#define TCollection_StackNode_Type_() ExprIntrp_StackNodeOfStackOfNames_Type_()
#define TCollection_Stack ExprIntrp_StackOfNames
#define TCollection_Stack_hxx <ExprIntrp_StackOfNames.hxx>
#include <TCollection_StackNode.gxx>

