Panda3D
|
This represents a single typedef declaration in the dc file. More...
#include "dcTypedef.h"
Public Member Functions | |
DCTypedef (DCParameter *parameter, bool implicit=false) | |
The DCTypedef object becomes the owner of the supplied parameter pointer and will delete it upon destruction. | |
DCTypedef (const string &name) | |
Creates a bogus typedef reference. | |
string | get_description () const |
Returns a brief decription of the typedef, useful for human consumption. | |
const string & | get_name () const |
Returns the name of this typedef. | |
int | get_number () const |
Returns a unique index number associated with this typedef definition. | |
bool | is_bogus_typedef () const |
Returns true if the typedef has been flagged as a bogus typedef. | |
bool | is_implicit_typedef () const |
Returns true if the typedef has been flagged as an implicit typedef, meaning it was created for a DCClass that was referenced inline as a type. | |
DCParameter * | make_new_parameter () const |
Returns a newly-allocated DCParameter object that uses the same type as that named by the typedef. | |
virtual void | output (ostream &out, bool brief) const |
Write a string representation of this instance to <out>. | |
void | set_number (int number) |
Assigns the unique number to this typedef. | |
virtual void | write (ostream &out, bool brief, int indent_level) const |
This represents a single typedef declaration in the dc file.
It assigns a particular type to a new name, just like a C typedef.
Definition at line 29 of file dcTypedef.h.
DCTypedef::DCTypedef | ( | DCParameter * | parameter, |
bool | implicit = false |
||
) |
The DCTypedef object becomes the owner of the supplied parameter pointer and will delete it upon destruction.
Definition at line 28 of file dcTypedef.cxx.
DCTypedef::DCTypedef | ( | const string & | name | ) |
Creates a bogus typedef reference.
Definition at line 42 of file dcTypedef.cxx.
References DCField::set_name().
string DCTypedef::get_description | ( | ) | const |
Returns a brief decription of the typedef, useful for human consumption.
Definition at line 90 of file dcTypedef.cxx.
const string & DCTypedef::get_name | ( | ) | const |
Returns the name of this typedef.
Definition at line 79 of file dcTypedef.cxx.
References DCPackerInterface::get_name().
Referenced by DCFile::add_typedef(), DCParameter::output_typedef_name(), and DCParameter::write_typedef_name().
int DCTypedef::get_number | ( | ) | const |
Returns a unique index number associated with this typedef definition.
This is defined implicitly when the .dc file(s) are read.
Definition at line 69 of file dcTypedef.cxx.
bool DCTypedef::is_bogus_typedef | ( | ) | const |
Returns true if the typedef has been flagged as a bogus typedef.
This is set for typedefs that are generated by the parser as placeholder for missing typedefs, as when reading a partial file; it should not occur in a normal valid dc file.
Definition at line 106 of file dcTypedef.cxx.
Referenced by DCFile::add_typedef().
bool DCTypedef::is_implicit_typedef | ( | ) | const |
Returns true if the typedef has been flagged as an implicit typedef, meaning it was created for a DCClass that was referenced inline as a type.
Definition at line 118 of file dcTypedef.cxx.
Referenced by DCFile::add_typedef().
DCParameter * DCTypedef::make_new_parameter | ( | ) | const |
Returns a newly-allocated DCParameter object that uses the same type as that named by the typedef.
Definition at line 129 of file dcTypedef.cxx.
References DCField::set_name(), and DCParameter::set_typedef().
void DCTypedef::output | ( | ostream & | out, |
bool | brief | ||
) | const [virtual] |
Write a string representation of this instance to <out>.
Implements DCDeclaration.
Definition at line 155 of file dcTypedef.cxx.
void DCTypedef::set_number | ( | int | number | ) |
Assigns the unique number to this typedef.
This is normally called only by the DCFile interface as the typedef is added.
Definition at line 144 of file dcTypedef.cxx.
Referenced by DCFile::add_typedef().