retdec
|
Representation of pointers. More...
#include <pointer_type.h>
Public Member Functions | |
std::shared_ptr< Node > | pointee () |
void | printLeft (std::ostream &s) const override |
Prints left side of pointer type or whole, depending on pointee. Right side printing is used for arrays and pointers to function types. More... | |
void | printRight (std::ostream &s) const override |
Prints right side of pointer type. Used for array and funtion types. More... | |
![]() | |
Qualifiers | quals () |
![]() | |
Node (Kind kind, bool has_right_side=false) | |
Abstract constructor for base node. More... | |
virtual | ~Node ()=default |
void | print (std::ostream &s) const |
Prints left side of node. More... | |
std::string | str () const |
Kind | kind () const |
bool | hasRight () |
Static Public Member Functions | |
static std::shared_ptr< PointerTypeNode > | create (Context &context, const std::shared_ptr< Node > &pointee, const Qualifiers &quals) |
Function for creating pointers. If type the same type was already created, then that instance is returned. More... | |
Private Member Functions | |
PointerTypeNode (const std::shared_ptr< Node > &pointee, const Qualifiers &quals) | |
Private Attributes | |
std::shared_ptr< Node > | _pointee |
Additional Inherited Members | |
![]() | |
enum class | Kind { KFunction , KFunctionType , KName , KNestedName , KNodeArray , KNodeString , KTypeNode , KBuiltInType , KPointerType , KIntegralType , KCharType , KFloatType , KParentheses , KReferenceType , KRReferenceType , KNamedType , KTemplateNode , KArrayNode , KConversionOperator } |
![]() | |
TypeNode (const Qualifiers &quals) | |
![]() | |
Qualifiers | _quals |
![]() | |
Kind | _kind |
bool | _has_right |
Representation of pointers.
|
private |
Private constructor for pointers. Use create().
|
static |
Function for creating pointers. If type the same type was already created, then that instance is returned.
context | Storage for types. |
pointee | Pointed type. |
quals | See BuiltInTypeNode quals. |
std::shared_ptr< Node > retdec::demangler::borland::PointerTypeNode::pointee | ( | ) |
|
overridevirtual |
Prints left side of pointer type or whole, depending on pointee. Right side printing is used for arrays and pointers to function types.
Implements retdec::demangler::borland::Node.
|
overridevirtual |
Prints right side of pointer type. Used for array and funtion types.
Reimplemented from retdec::demangler::borland::Node.
|
private |