PandA-2024.02
Public Types | Public Member Functions | Data Fields
integer_type Struct Reference

struct definition of the integer_type tree node. More...

#include <tree_node.hpp>

Inheritance diagram for integer_type:
Inheritance graph
[legend]
Collaboration diagram for integer_type:
Collaboration graph
[legend]

Public Types

enum  { GETID =(type_node) = 0, GETID =(type_node) = 0 }
 visitor enum More...
 
- Public Types inherited from type_node
enum  { GETID =(tree_node) = 0, GETID =(tree_node) = 0, GETID =(tree_node) = 0, GETID =(tree_node) = 0 }
 visitor enum More...
 

Public Member Functions

 integer_type (unsigned int i)
 constructor More...
 
void visit (tree_node_visitor *const v) const override
 Redefinition of get_kind_text. More...
 
- Public Member Functions inherited from type_node
 type_node (unsigned int i)
 constructor More...
 
- Public Member Functions inherited from tree_node
 tree_node (unsigned int i)
 Constructor. More...
 
virtual ~tree_node ()=default
 Destructor. More...
 
virtual enum kind get_kind () const =0
 Virtual function returning the type of the actual class. More...
 
virtual std::string get_kind_text () const =0
 Virtual function returning the name of the actual class. More...
 
std::string ToString () const
 Print this node as string in gimple format. More...
 

Data Fields

unsigned int prec
 prec field is the number of bits used by this type (macro TYPE_PRECISION) More...
 
std::string str
 FIXME: add the meaning of this field. More...
 
bool unsigned_flag
 unsigned means an unsigned type (macro TYPE_UNSIGNED) More...
 
tree_nodeRef min
 min: tree-dump.c use the macro TYPE_MIN_VALUE More...
 
tree_nodeRef max
 max: tree-dump.c use the macro TYPE_MAX_VALUE More...
 
- Data Fields inherited from type_node
TreeVocabularyTokenTypes_TokenEnum qual
 qual is the set of type qualifiers for this type. More...
 
tree_nodeRef name
 name field contains info on the name used in the program for this type.It is either a TYPE_DECL node, for types that are typedefs, or an IDENTIFIER_NODE in the case of structs, unions or enums that are known with a tag, or zero for types that have no special name. More...
 
tree_nodeRef unql
 unql field, in any member of such a chain, points to the start of the chain. More...
 
tree_nodeRef size
 size field contains a tree that is an expression for the size in bits. More...
 
tree_nodeRef scpe
 context/scope of the type object. More...
 
unsigned int algn
 algn field is the alignment necessary for objects of this type. More...
 
bool packed_flag
 Indicated that objects of this type should be laid out in as compact a way as possible. More...
 
bool system_flag
 system flag: it's true when this is a system variable More...
 
bool libbambu_flag
 it is true when this is a declared inside libbambu More...
 
- Data Fields inherited from tree_node
const unsigned int index
 Represent the index read from the raw file and the index-1 of the vector of tree_node associated to the functions vector present in the tree_manager. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from tree_node
static enum kind get_kind (const std::string &name)
 Given a string, return the corresponding kind. More...
 
static std::string GetString (const enum kind k)
 Given a kind, return the corresponding string. More...
 

Detailed Description

struct definition of the integer_type tree node.

The tree walker structure of this node is: #(TOK_INTEGER_TYPE type_node prec (TOK_STRING)? (TOK_UNSIGNED)? min max );

Definition at line 3279 of file tree_node.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

visitor enum

Enumerator
GETID 
GETID 

Definition at line 3322 of file tree_node.hpp.

Constructor & Destructor Documentation

◆ integer_type()

integer_type::integer_type ( unsigned int  i)
inlineexplicit

constructor

Definition at line 3282 of file tree_node.hpp.

Member Function Documentation

◆ visit()

void integer_type::visit ( tree_node_visitor *const  v) const
overridevirtual

Redefinition of get_kind_text.

Redefinition of get_kind. virtual function used to traverse the tree_node data structure.

Parameters
vis a reference to the tree_node visitor class

Reimplemented from type_node.

Definition at line 926 of file tree_node.cpp.

References ALL_VISIT, max, min, identifier_node::visit(), VISIT_MEMBER, and VISIT_SC.

Here is the call graph for this function:

Field Documentation

◆ max

tree_nodeRef integer_type::max

max: tree-dump.c use the macro TYPE_MAX_VALUE

Definition at line 3307 of file tree_node.hpp.

Referenced by raw_writer::write_when_not_null_point_to().

◆ min

tree_nodeRef integer_type::min

min: tree-dump.c use the macro TYPE_MIN_VALUE

Definition at line 3304 of file tree_node.hpp.

Referenced by raw_writer::write_when_not_null_point_to().

◆ prec

unsigned int integer_type::prec

prec field is the number of bits used by this type (macro TYPE_PRECISION)

Definition at line 3292 of file tree_node.hpp.

Referenced by raw_writer::write_when_not_null_point_to().

◆ str

std::string integer_type::str

FIXME: add the meaning of this field.

Definition at line 3295 of file tree_node.hpp.

Referenced by raw_writer::write_when_not_null_point_to().

◆ unsigned_flag

bool integer_type::unsigned_flag

unsigned means an unsigned type (macro TYPE_UNSIGNED)

Definition at line 3301 of file tree_node.hpp.

Referenced by raw_writer::write_when_not_null_point_to().


The documentation for this struct was generated from the following files:

Generated on Mon Feb 12 2024 13:03:55 for PandA-2024.02 by doxygen 1.8.13