Panda3D
|
An internal representation of a type. More...
#include "interrogateType.h"
Classes | |
class | Derivation |
class | EnumValue |
Public Member Functions | |
InterrogateType (const InterrogateType ©) | |
InterrogateType (InterrogateModuleDef *def=nullptr) | |
bool | derivation_downcast_is_impossible (int n) const |
FunctionIndex | derivation_get_downcast (int n) const |
FunctionIndex | derivation_get_upcast (int n) const |
bool | derivation_has_downcast (int n) const |
bool | derivation_has_upcast (int n) const |
bool | destructor_is_implicit () const |
bool | destructor_is_inherited () const |
int | get_array_size () const |
AtomicToken | get_atomic_token () const |
FunctionIndex | get_cast (int n) const |
const std::string & | get_comment () const |
FunctionIndex | get_constructor (int n) const |
TypeIndex | get_derivation (int n) const |
FunctionIndex | get_destructor () const |
ElementIndex | get_element (int n) const |
int | get_enum_value (int n) const |
const std::string & | get_enum_value_comment (int n) const |
const std::string & | get_enum_value_name (int n) const |
const std::string & | get_enum_value_scoped_name (int n) const |
MakeSeqIndex | get_make_seq (int n) const |
FunctionIndex | get_method (int n) const |
TypeIndex | get_nested_type (int n) const |
TypeIndex | get_outer_class () const |
If is_nested() returns true, this is the class within which this type is defined. More... | |
const std::string & | get_scoped_name () const |
const std::string & | get_true_name () const |
TypeIndex | get_wrapped_type () const |
bool | has_comment () const |
bool | has_destructor () const |
bool | has_scoped_name () const |
bool | has_true_name () const |
void | input (std::istream &in) |
Reads the data file as previously formatted by output(). More... | |
bool | is_array () const |
bool | is_atomic () const |
bool | is_class () const |
bool | is_const () const |
bool | is_enum () const |
bool | is_final () const |
bool | is_fully_defined () const |
bool | is_global () const |
Returns true if the type is marked as 'global'. More... | |
bool | is_long () const |
bool | is_longlong () const |
bool | is_nested () const |
Returns true if this type is nested within some class definition. More... | |
bool | is_pointer () const |
bool | is_scoped_enum () const |
Returns true if enum values are only available under a scope. More... | |
bool | is_short () const |
bool | is_signed () const |
bool | is_struct () const |
bool | is_typedef () const |
bool | is_union () const |
bool | is_unpublished () const |
Returns true if the type is an unpublished type. More... | |
bool | is_unsigned () const |
bool | is_wrapped () const |
void | merge_with (const InterrogateType &other) |
Combines type with the other similar definition. More... | |
int | number_of_casts () const |
int | number_of_constructors () const |
int | number_of_derivations () const |
int | number_of_elements () const |
int | number_of_enum_values () const |
int | number_of_make_seqs () const |
int | number_of_methods () const |
int | number_of_nested_types () const |
void | operator= (const InterrogateType ©) |
void | output (std::ostream &out) const |
Formats the InterrogateType data for output to a data file. More... | |
void | remap_indices (const IndexRemapper &remap) |
Remaps all internal index numbers according to the indicated map. More... | |
![]() | |
InterrogateComponent (const InterrogateComponent ©) | |
InterrogateComponent (InterrogateModuleDef *def=nullptr) | |
const std::string & | get_alt_name (int n) const |
const char * | get_library_name () const |
Returns the library name, if it is known, or NULL if it is not. More... | |
const char * | get_module_name () const |
Returns the module name, if it is known, or NULL if it is not. More... | |
const std::string & | get_name () const |
int | get_num_alt_names () const |
bool | has_library_name () const |
Returns true if we have a known library name, false if we do not. More... | |
bool | has_module_name () const |
Returns true if we have a known module name, false if we do not. More... | |
bool | has_name () const |
void | input (std::istream &in) |
Reads the data file as previously formatted by output(). More... | |
void | operator= (const InterrogateComponent ©) |
void | output (std::ostream &out) const |
Formats the component for output to a data file. More... | |
Friends | |
class | InterrogateBuilder |
An internal representation of a type.
Definition at line 30 of file interrogateType.h.
|
inline |
If is_nested() returns true, this is the class within which this type is defined.
Definition at line 83 of file interrogateType.I.
void InterrogateType::input | ( | std::istream & | in | ) |
Reads the data file as previously formatted by output().
Definition at line 172 of file interrogateType.cxx.
References idf_input_string(), and InterrogateComponent::input().
|
inline |
Returns true if the type is marked as 'global'.
This means only that it should appear in the global type list.
Definition at line 18 of file interrogateType.I.
Referenced by InterrogateDatabase::add_type().
|
inline |
Returns true if this type is nested within some class definition.
Definition at line 74 of file interrogateType.I.
|
inline |
Returns true if enum values are only available under a scope.
Definition at line 211 of file interrogateType.I.
|
inline |
Returns true if the type is an unpublished type.
This either means the type is a nested type, and it is protected or private within its scope, or that its definition is simply not marked as 'published'.
Definition at line 313 of file interrogateType.I.
void InterrogateType::merge_with | ( | const InterrogateType & | other | ) |
Combines type with the other similar definition.
If one type is "fully defined" and the other one isn't, the fully-defined type wins. If both types are fully defined, whichever type is marked "global" wins.
Definition at line 121 of file interrogateType.cxx.
Referenced by InterrogateDatabase::add_type().
void InterrogateType::output | ( | std::ostream & | out | ) | const |
Formats the InterrogateType data for output to a data file.
Definition at line 142 of file interrogateType.cxx.
References idf_output_string(), idf_output_vector(), and InterrogateComponent::output().
void InterrogateType::remap_indices | ( | const IndexRemapper & | remap | ) |
Remaps all internal index numbers according to the indicated map.
This called from InterrogateDatabase::remap_indices().
Definition at line 207 of file interrogateType.cxx.
References IndexRemapper::map_from().