Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members  

InterrogateType Class Reference

#include <interrogateType.h>

Inheritance diagram for InterrogateType:

InterrogateComponent List of all members.

Public Member Functions

INLINE InterrogateType (InterrogateModuleDef *def=NULL)
INLINE InterrogateType (const InterrogateType &copy)
void operator= (const InterrogateType &copy)
INLINE bool is_global () const
INLINE bool has_scoped_name () const
INLINE const string & get_scoped_name () const
INLINE bool has_true_name () const
INLINE const string & get_true_name () const
INLINE bool has_comment () const
INLINE const string & get_comment () const
INLINE bool is_nested () const
INLINE TypeIndex get_outer_class () const
INLINE bool is_atomic () const
INLINE AtomicToken get_atomic_token () const
INLINE bool is_unsigned () const
INLINE bool is_signed () const
INLINE bool is_long () const
INLINE bool is_longlong () const
INLINE bool is_short () const
INLINE bool is_wrapped () const
INLINE bool is_pointer () const
INLINE bool is_const () const
INLINE TypeIndex get_wrapped_type () const
INLINE bool is_enum () const
INLINE int number_of_enum_values () const
INLINE const string & get_enum_value_name (int n) const
INLINE const string & get_enum_value_scoped_name (int n) const
INLINE int get_enum_value (int n) const
INLINE bool is_struct () const
INLINE bool is_class () const
INLINE bool is_union () const
INLINE bool is_fully_defined () const
INLINE bool is_unpublished () const
INLINE int number_of_constructors () const
INLINE FunctionIndex get_constructor (int n) const
INLINE bool has_destructor () const
INLINE bool destructor_is_inherited () const
INLINE FunctionIndex get_destructor () const
INLINE int number_of_elements () const
INLINE ElementIndex get_element (int n) const
INLINE int number_of_methods () const
INLINE FunctionIndex get_method (int n) const
INLINE int number_of_casts () const
INLINE FunctionIndex get_cast (int n) const
INLINE int number_of_derivations () const
INLINE TypeIndex get_derivation (int n) const
INLINE bool derivation_has_upcast (int n) const
INLINE FunctionIndex derivation_get_upcast (int n) const
INLINE bool derivation_downcast_is_impossible (int n) const
INLINE bool derivation_has_downcast (int n) const
INLINE FunctionIndex derivation_get_downcast (int n) const
INLINE int number_of_nested_types () const
INLINE TypeIndex get_nested_type (int n) const
void merge_with (const InterrogateType &other)
void output (ostream &out) const
void input (istream &in)
void remap_indices (const IndexRemapper &remap)

Public Attributes

CPPType_cpptype
CPPScope_cppscope

Private Types

typedef vector< FunctionIndexFunctions
typedef vector< ElementIndexElements
typedef vector< DerivationDerivations
typedef vector< EnumValueEnumValues
typedef vector< TypeIndexTypes
enum  Flags {
  F_global = 0x000001, F_atomic = 0x000002, F_unsigned = 0x000004, F_signed = 0x000008,
  F_long = 0x000010, F_longlong = 0x000020, F_short = 0x000040, F_wrapped = 0x000080,
  F_pointer = 0x000100, F_const = 0x000200, F_struct = 0x000400, F_class = 0x000800,
  F_union = 0x001000, F_fully_defined = 0x002000, F_true_destructor = 0x004000, F_private_destructor = 0x008000,
  F_inherited_destructor = 0x010000, F_implicit_destructor = 0x020000, F_nested = 0x040000, F_enum = 0x080000,
  F_unpublished = 0x100000
}
enum  DerivationFlags { DF_upcast = 0x01, DF_downcast = 0x02, DF_downcast_impossible = 0x04 }

Private Attributes

int _flags
string _scoped_name
string _true_name
string _comment
TypeIndex _outer_class
AtomicToken _atomic_token
TypeIndex _wrapped_type
Functions _constructors
FunctionIndex _destructor
Elements _elements
Functions _methods
Functions _casts
Derivations _derivations
EnumValues _enum_values
Types _nested_types

Static Private Attributes

string _empty_string

Friends

class InterrogateBuilder

Member Typedef Documentation

typedef vector<Derivation> InterrogateType::Derivations [private]
 

Definition at line 177 of file interrogateType.h.

typedef vector<ElementIndex> InterrogateType::Elements [private]
 

Definition at line 150 of file interrogateType.h.

typedef vector<EnumValue> InterrogateType::EnumValues [private]
 

Definition at line 193 of file interrogateType.h.

typedef vector<FunctionIndex> InterrogateType::Functions [private]
 

Definition at line 146 of file interrogateType.h.

typedef vector<TypeIndex> InterrogateType::Types [private]
 

Definition at line 196 of file interrogateType.h.


Member Enumeration Documentation

enum InterrogateType::DerivationFlags [private]
 

Enumeration values:
DF_upcast 
DF_downcast 
DF_downcast_impossible 

Definition at line 155 of file interrogateType.h.

enum InterrogateType::Flags [private]
 

Enumeration values:
F_global 
F_atomic 
F_unsigned 
F_signed 
F_long 
F_longlong 
F_short 
F_wrapped 
F_pointer 
F_const 
F_struct 
F_class 
F_union 
F_fully_defined 
F_true_destructor 
F_private_destructor 
F_inherited_destructor 
F_implicit_destructor 
F_nested 
F_enum 
F_unpublished 

Definition at line 114 of file interrogateType.h.


Constructor & Destructor Documentation

INLINE InterrogateType::InterrogateType InterrogateModuleDef def = NULL  ) 
 

INLINE InterrogateType::InterrogateType const InterrogateType &  copy  ) 
 


Member Function Documentation

INLINE bool InterrogateType::derivation_downcast_is_impossible int  n  )  const
 

Referenced by interrogate_type_derivation_downcast_is_impossible().

INLINE FunctionIndex InterrogateType::derivation_get_downcast int  n  )  const
 

Referenced by interrogate_type_get_downcast(), and InterfaceMaker::record_object().

INLINE FunctionIndex InterrogateType::derivation_get_upcast int  n  )  const
 

Referenced by interrogate_type_get_upcast(), and InterfaceMaker::record_object().

INLINE bool InterrogateType::derivation_has_downcast int  n  )  const
 

Referenced by interrogate_type_derivation_has_downcast(), and InterfaceMaker::record_object().

INLINE bool InterrogateType::derivation_has_upcast int  n  )  const
 

Referenced by interrogate_type_derivation_has_upcast(), and InterfaceMaker::record_object().

INLINE bool InterrogateType::destructor_is_inherited  )  const
 

Referenced by interrogate_type_destructor_is_inherited(), and InterfaceMaker::record_object().

INLINE AtomicToken InterrogateType::get_atomic_token  )  const
 

Referenced by interrogate_type_atomic_token().

INLINE FunctionIndex InterrogateType::get_cast int  n  )  const
 

Referenced by interrogate_type_get_cast(), and InterfaceMaker::record_object().

INLINE const string& InterrogateType::get_comment  )  const
 

Referenced by interrogate_type_comment().

INLINE FunctionIndex InterrogateType::get_constructor int  n  )  const
 

Referenced by interrogate_type_get_constructor(), and InterfaceMaker::record_object().

INLINE TypeIndex InterrogateType::get_derivation int  n  )  const
 

Referenced by interrogate_type_get_derivation(), and InterfaceMaker::record_object().

INLINE FunctionIndex InterrogateType::get_destructor  )  const
 

Referenced by InterrogateBuilder::get_destructor_for(), interrogate_type_get_destructor(), and InterfaceMaker::record_object().

INLINE ElementIndex InterrogateType::get_element int  n  )  const
 

Referenced by interrogate_type_get_element(), and InterfaceMaker::record_object().

INLINE int InterrogateType::get_enum_value int  n  )  const
 

Referenced by interrogate_type_enum_value().

INLINE const string& InterrogateType::get_enum_value_name int  n  )  const
 

Referenced by interrogate_type_enum_value_name().

INLINE const string& InterrogateType::get_enum_value_scoped_name int  n  )  const
 

Referenced by interrogate_type_enum_value_scoped_name().

INLINE FunctionIndex InterrogateType::get_method int  n  )  const
 

Referenced by interrogate_type_get_method(), and InterfaceMaker::record_object().

INLINE TypeIndex InterrogateType::get_nested_type int  n  )  const
 

Referenced by interrogate_type_get_nested_type(), and InterfaceMaker::record_object().

INLINE TypeIndex InterrogateType::get_outer_class  )  const
 

Referenced by interrogate_type_outer_class().

INLINE const string& InterrogateType::get_scoped_name  )  const
 

Referenced by interrogate_type_scoped_name().

INLINE const string& InterrogateType::get_true_name  )  const
 

Referenced by interrogate_type_true_name(), and InterrogateDatabase::merge_from().

INLINE TypeIndex InterrogateType::get_wrapped_type  )  const
 

Referenced by interrogate_type_wrapped_type().

INLINE bool InterrogateType::has_comment  )  const
 

Referenced by interrogate_type_has_comment().

INLINE bool InterrogateType::has_destructor  )  const
 

Referenced by interrogate_type_has_destructor(), and InterfaceMaker::record_object().

INLINE bool InterrogateType::has_scoped_name  )  const
 

INLINE bool InterrogateType::has_true_name  )  const
 

void InterrogateType::input istream in  ) 
 

Reimplemented from InterrogateComponent.

Definition at line 159 of file interrogateType.cxx.

References _atomic_token, _casts, _comment, _constructors, _derivations, _destructor, _elements, _enum_values, _flags, _methods, _nested_types, _outer_class, _scoped_name, _true_name, _wrapped_type, idf_input_string(), idf_input_vector(), and InterrogateComponent::input().

INLINE bool InterrogateType::is_atomic  )  const
 

Referenced by interrogate_type_is_atomic().

INLINE bool InterrogateType::is_class  )  const
 

Referenced by interrogate_type_is_class().

INLINE bool InterrogateType::is_const  )  const
 

Referenced by interrogate_type_is_const().

INLINE bool InterrogateType::is_enum  )  const
 

Referenced by interrogate_type_is_enum().

INLINE bool InterrogateType::is_fully_defined  )  const
 

Referenced by InterrogateDatabase::add_type(), interrogate_type_is_fully_defined(), and merge_with().

INLINE bool InterrogateType::is_global  )  const
 

Referenced by InterrogateDatabase::merge_from().

INLINE bool InterrogateType::is_long  )  const
 

Referenced by interrogate_type_is_long().

INLINE bool InterrogateType::is_longlong  )  const
 

Referenced by interrogate_type_is_longlong().

INLINE bool InterrogateType::is_nested  )  const
 

Referenced by interrogate_type_is_nested().

INLINE bool InterrogateType::is_pointer  )  const
 

Referenced by interrogate_type_is_pointer().

INLINE bool InterrogateType::is_short  )  const
 

Referenced by interrogate_type_is_short().

INLINE bool InterrogateType::is_signed  )  const
 

Referenced by interrogate_type_is_signed().

INLINE bool InterrogateType::is_struct  )  const
 

Referenced by interrogate_type_is_struct().

INLINE bool InterrogateType::is_union  )  const
 

Referenced by interrogate_type_is_union().

INLINE bool InterrogateType::is_unpublished  )  const
 

Referenced by interrogate_type_is_unpublished().

INLINE bool InterrogateType::is_unsigned  )  const
 

Referenced by interrogate_type_is_unsigned().

INLINE bool InterrogateType::is_wrapped  )  const
 

Referenced by interrogate_type_is_wrapped().

void InterrogateType::merge_with const InterrogateType &  other  ) 
 

Definition at line 109 of file interrogateType.cxx.

References _flags, F_global, and is_fully_defined().

Referenced by InterrogateDatabase::add_type(), and InterrogateDatabase::merge_from().

INLINE int InterrogateType::number_of_casts  )  const
 

Referenced by interrogate_type_number_of_casts(), and InterfaceMaker::record_object().

INLINE int InterrogateType::number_of_constructors  )  const
 

Referenced by interrogate_type_number_of_constructors(), and InterfaceMaker::record_object().

INLINE int InterrogateType::number_of_derivations  )  const
 

Referenced by interrogate_type_number_of_derivations(), and InterfaceMaker::record_object().

INLINE int InterrogateType::number_of_elements  )  const
 

Referenced by interrogate_type_number_of_elements(), and InterfaceMaker::record_object().

INLINE int InterrogateType::number_of_enum_values  )  const
 

Referenced by interrogate_type_number_of_enum_values().

INLINE int InterrogateType::number_of_methods  )  const
 

Referenced by interrogate_type_number_of_methods(), and InterfaceMaker::record_object().

INLINE int InterrogateType::number_of_nested_types  )  const
 

Referenced by interrogate_type_number_of_nested_types(), and InterfaceMaker::record_object().

void InterrogateType::operator= const InterrogateType &  copy  ) 
 

Definition at line 79 of file interrogateType.cxx.

References _atomic_token, _casts, _comment, _constructors, _cppscope, _cpptype, _derivations, _destructor, _elements, _enum_values, _flags, _methods, _nested_types, _outer_class, _scoped_name, _true_name, _wrapped_type, and InterrogateComponent::operator=().

void InterrogateType::output ostream out  )  const
 

Reimplemented from InterrogateComponent.

Definition at line 132 of file interrogateType.cxx.

References _atomic_token, _casts, _comment, _constructors, _derivations, _destructor, _elements, _enum_values, _flags, _methods, _nested_types, _outer_class, _scoped_name, _true_name, _wrapped_type, idf_output_string(), idf_output_vector(), and InterrogateComponent::output().

void InterrogateType::remap_indices const IndexRemapper remap  ) 
 

Definition at line 192 of file interrogateType.cxx.

References _casts, _constructors, _derivations, _destructor, _elements, _methods, _nested_types, _outer_class, _wrapped_type, and IndexRemapper::map_from().

Referenced by InterrogateDatabase::merge_from().


Friends And Related Function Documentation

friend class InterrogateBuilder [friend]
 

Reimplemented from InterrogateComponent.

Definition at line 210 of file interrogateType.h.


Member Data Documentation

AtomicToken InterrogateType::_atomic_token [private]
 

Definition at line 143 of file interrogateType.h.

Referenced by InterrogateBuilder::define_atomic_type(), InterrogateBuilder::get_atomic_string_type(), input(), operator=(), and output().

Functions InterrogateType::_casts [private]
 

Definition at line 153 of file interrogateType.h.

Referenced by InterrogateBuilder::define_method(), input(), operator=(), output(), and remap_indices().

string InterrogateType::_comment [private]
 

Definition at line 141 of file interrogateType.h.

Referenced by InterrogateBuilder::get_type(), input(), operator=(), and output().

Functions InterrogateType::_constructors [private]
 

Definition at line 147 of file interrogateType.h.

Referenced by InterrogateBuilder::define_method(), input(), operator=(), output(), and remap_indices().

CPPScope* InterrogateType::_cppscope
 

Definition at line 208 of file interrogateType.h.

Referenced by FunctionRemap::FunctionRemap(), InterrogateBuilder::get_type(), and operator=().

CPPType* InterrogateType::_cpptype
 

Definition at line 207 of file interrogateType.h.

Referenced by FunctionRemap::FunctionRemap(), InterrogateBuilder::get_type(), operator=(), and InterfaceMakerPythonObj::write_class_wrapper().

Derivations InterrogateType::_derivations [private]
 

Definition at line 178 of file interrogateType.h.

Referenced by InterrogateBuilder::define_struct_type(), input(), operator=(), output(), and remap_indices().

FunctionIndex InterrogateType::_destructor [private]
 

Definition at line 148 of file interrogateType.h.

Referenced by InterrogateBuilder::define_method(), InterrogateBuilder::define_struct_type(), input(), operator=(), output(), and remap_indices().

Elements InterrogateType::_elements [private]
 

Definition at line 151 of file interrogateType.h.

Referenced by InterrogateBuilder::define_struct_type(), input(), operator=(), output(), and remap_indices().

string InterrogateType::_empty_string [static, private]
 

Definition at line 27 of file interrogateType.cxx.

EnumValues InterrogateType::_enum_values [private]
 

Definition at line 194 of file interrogateType.h.

Referenced by InterrogateBuilder::define_enum_type(), input(), operator=(), and output().

int InterrogateType::_flags [private]
 

Definition at line 138 of file interrogateType.h.

Referenced by InterrogateBuilder::define_atomic_type(), InterrogateBuilder::define_enum_type(), InterrogateBuilder::define_extension_type(), InterrogateBuilder::define_method(), InterrogateBuilder::define_struct_type(), InterrogateBuilder::define_wrapped_type(), InterrogateBuilder::get_atomic_string_type(), InterrogateBuilder::get_type(), input(), merge_with(), operator=(), and output().

Functions InterrogateType::_methods [private]
 

Definition at line 152 of file interrogateType.h.

Referenced by InterrogateBuilder::define_method(), input(), operator=(), output(), and remap_indices().

Types InterrogateType::_nested_types [private]
 

Definition at line 197 of file interrogateType.h.

Referenced by InterrogateBuilder::define_struct_type(), input(), operator=(), output(), and remap_indices().

TypeIndex InterrogateType::_outer_class [private]
 

Definition at line 142 of file interrogateType.h.

Referenced by InterrogateBuilder::get_type(), input(), operator=(), output(), and remap_indices().

string InterrogateType::_scoped_name [private]
 

Definition at line 139 of file interrogateType.h.

Referenced by InterrogateBuilder::get_atomic_string_type(), InterrogateBuilder::get_type(), input(), operator=(), and output().

string InterrogateType::_true_name [private]
 

Definition at line 140 of file interrogateType.h.

Referenced by InterrogateBuilder::get_atomic_string_type(), InterrogateBuilder::get_type(), input(), operator=(), and output().

TypeIndex InterrogateType::_wrapped_type [private]
 

Definition at line 144 of file interrogateType.h.

Referenced by InterrogateBuilder::define_wrapped_type(), input(), operator=(), output(), and remap_indices().


The documentation for this class was generated from the following files:
Generated on Fri Apr 18 01:35:02 2003 for DTool by doxygen1.3