PandA-2024.02
Data Structures | Macros | Typedefs
tree_manipulation.hpp File Reference

Class defining some useful functions to create tree nodes and to manipulate the tree manager. More...

#include "custom_map.hpp"
#include "panda_types.hpp"
#include "refcount.hpp"
#include <limits>
#include <string>
#include <utility>
#include <vector>
Include dependency graph for tree_manipulation.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  tree_manipulation
 This class creates a layer to add nodes and to manipulate the tree_nodes manager. More...
 

Macros

#define ALGN_BIT_SIZE   64
 
#define ALGN_UNSIGNED_INT   32
 
#define ALGN_INT   32
 
#define ALGN_LONG_LONG_INT   64
 
#define ALGN_UNSIGNED_LONG_LONG_INT   64
 
#define ALGN_VOID   8
 
#define ALGN_BOOLEAN   8
 
#define ALGN_POINTER_M64   64
 
#define ALGN_POINTER_M32   32
 
#define PREC_BIT_SIZE   64
 
#define PREC_UNSIGNED_INT   32
 
#define PREC_INT   32
 
#define PREC_LONG_LONG_INT   64
 
#define PREC_UNSIGNED_LONG_LONG_INT   64
 
#define SIZE_VALUE_BIT_SIZE   64
 
#define SIZE_VALUE_UNSIGNED_INT   32
 
#define SIZE_VALUE_LONG_LONG_INT   64
 
#define SIZE_VALUE_UNSIGNED_LONG_LONG_INT   64
 
#define SIZE_VALUE_INT   32
 
#define SIZE_VALUE_BOOL   8
 
#define SIZE_VALUE_FUNCTION   8
 
#define SIZE_VALUE_POINTER_M32   32
 
#define SIZE_VALUE_POINTER_M64   64
 
#define MIN_VALUE_BIT_SIZE   (std::numeric_limits<unsigned long long>::min())
 
#define MIN_VALUE_INT   (std::numeric_limits<int>::min())
 
#define MIN_VALUE_UNSIGNED_INT   (std::numeric_limits<unsigned int>::min())
 
#define MIN_VALUE_LONG_LONG_INT   (std::numeric_limits<long long>::min())
 
#define MIN_VALUE_UNSIGNED_LONG_LONG_INT   (std::numeric_limits<unsigned long long>::min())
 
#define MAX_VALUE_BIT_SIZE   (std::numeric_limits<unsigned long long>::max())
 
#define MAX_VALUE_INT   (std::numeric_limits<int>::max())
 
#define MAX_VALUE_UNSIGNED_INT   (std::numeric_limits<unsigned int>::max())
 
#define MAX_VALUE_LONG_LONG_INT   (std::numeric_limits<long long>::max())
 
#define MAX_VALUE_UNSIGNED_LONG_LONG_INT   (std::numeric_limits<unsigned long long>::max())
 

Typedefs

using tree_manipulationRef = refcount< tree_manipulation >
 
using tree_manipulationConstRef = refcount< const tree_manipulation >
 

Functions

forward declarations

Utility include

 REF_FORWARD_DECL (CallGraphManager)
 
 CONSTREF_FORWARD_DECL (Parameter)
 
 REF_FORWARD_DECL (tree_node)
 
 CONSTREF_FORWARD_DECL (tree_node)
 
 REF_FORWARD_DECL (tree_manager)
 
 REF_FORWARD_DECL (tree_manipulation)
 
 REF_FORWARD_DECL (application_manager)
 
 REF_FORWARD_DECL (bloc)
 

Detailed Description

Class defining some useful functions to create tree nodes and to manipulate the tree manager.

This class defines some useful functions to create tree nodes and to manipulate the tree manager.

Author
ste stefa.nosp@m.no.v.nosp@m.iazzi.nosp@m.@gma.nosp@m.il.co.nosp@m.m
Marco Lattuada marco.nosp@m..lat.nosp@m.tuada.nosp@m.@pol.nosp@m.imi.i.nosp@m.t
Fabrizio Ferrandi fabri.nosp@m.zio..nosp@m.ferra.nosp@m.ndi@.nosp@m.polim.nosp@m.i.it

Definition in file tree_manipulation.hpp.

Macro Definition Documentation

◆ ALGN_BIT_SIZE

#define ALGN_BIT_SIZE   64

◆ ALGN_BOOLEAN

#define ALGN_BOOLEAN   8

Definition at line 80 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetBooleanType().

◆ ALGN_INT

#define ALGN_INT   32

Definition at line 76 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetSignedIntegerType().

◆ ALGN_LONG_LONG_INT

#define ALGN_LONG_LONG_INT   64

Definition at line 77 of file tree_manipulation.hpp.

◆ ALGN_POINTER_M32

#define ALGN_POINTER_M32   32

Definition at line 82 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetPointerType().

◆ ALGN_POINTER_M64

#define ALGN_POINTER_M64   64

Definition at line 81 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetPointerType().

◆ ALGN_UNSIGNED_INT

#define ALGN_UNSIGNED_INT   32

Definition at line 75 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedIntegerType().

◆ ALGN_UNSIGNED_LONG_LONG_INT

#define ALGN_UNSIGNED_LONG_LONG_INT   64

Definition at line 78 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedLongLongType().

◆ ALGN_VOID

#define ALGN_VOID   8

Definition at line 79 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetVoidType().

◆ MAX_VALUE_BIT_SIZE

#define MAX_VALUE_BIT_SIZE   (std::numeric_limits<unsigned long long>::max())

◆ MAX_VALUE_INT

#define MAX_VALUE_INT   (std::numeric_limits<int>::max())

Definition at line 107 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetSignedIntegerType().

◆ MAX_VALUE_LONG_LONG_INT

#define MAX_VALUE_LONG_LONG_INT   (std::numeric_limits<long long>::max())

Definition at line 109 of file tree_manipulation.hpp.

◆ MAX_VALUE_UNSIGNED_INT

#define MAX_VALUE_UNSIGNED_INT   (std::numeric_limits<unsigned int>::max())

Definition at line 108 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedIntegerType().

◆ MAX_VALUE_UNSIGNED_LONG_LONG_INT

#define MAX_VALUE_UNSIGNED_LONG_LONG_INT   (std::numeric_limits<unsigned long long>::max())

Definition at line 110 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedLongLongType().

◆ MIN_VALUE_BIT_SIZE

#define MIN_VALUE_BIT_SIZE   (std::numeric_limits<unsigned long long>::min())

◆ MIN_VALUE_INT

#define MIN_VALUE_INT   (std::numeric_limits<int>::min())

Definition at line 101 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetSignedIntegerType().

◆ MIN_VALUE_LONG_LONG_INT

#define MIN_VALUE_LONG_LONG_INT   (std::numeric_limits<long long>::min())

Definition at line 103 of file tree_manipulation.hpp.

◆ MIN_VALUE_UNSIGNED_INT

#define MIN_VALUE_UNSIGNED_INT   (std::numeric_limits<unsigned int>::min())

Definition at line 102 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedIntegerType().

◆ MIN_VALUE_UNSIGNED_LONG_LONG_INT

#define MIN_VALUE_UNSIGNED_LONG_LONG_INT   (std::numeric_limits<unsigned long long>::min())

Definition at line 104 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedLongLongType().

◆ PREC_BIT_SIZE

#define PREC_BIT_SIZE   64

◆ PREC_INT

#define PREC_INT   32

Definition at line 86 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetSignedIntegerType().

◆ PREC_LONG_LONG_INT

#define PREC_LONG_LONG_INT   64

Definition at line 87 of file tree_manipulation.hpp.

◆ PREC_UNSIGNED_INT

#define PREC_UNSIGNED_INT   32

Definition at line 85 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedIntegerType().

◆ PREC_UNSIGNED_LONG_LONG_INT

#define PREC_UNSIGNED_LONG_LONG_INT   64

Definition at line 88 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedLongLongType().

◆ SIZE_VALUE_BIT_SIZE

#define SIZE_VALUE_BIT_SIZE   64

◆ SIZE_VALUE_BOOL

#define SIZE_VALUE_BOOL   8

Definition at line 95 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetBooleanType().

◆ SIZE_VALUE_FUNCTION

#define SIZE_VALUE_FUNCTION   8

Definition at line 96 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetFunctionType().

◆ SIZE_VALUE_INT

#define SIZE_VALUE_INT   32

Definition at line 94 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetSignedIntegerType().

◆ SIZE_VALUE_LONG_LONG_INT

#define SIZE_VALUE_LONG_LONG_INT   64

Definition at line 92 of file tree_manipulation.hpp.

◆ SIZE_VALUE_POINTER_M32

#define SIZE_VALUE_POINTER_M32   32

Definition at line 97 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetPointerType().

◆ SIZE_VALUE_POINTER_M64

#define SIZE_VALUE_POINTER_M64   64

Definition at line 98 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetPointerType().

◆ SIZE_VALUE_UNSIGNED_INT

#define SIZE_VALUE_UNSIGNED_INT   32

Definition at line 91 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedIntegerType().

◆ SIZE_VALUE_UNSIGNED_LONG_LONG_INT

#define SIZE_VALUE_UNSIGNED_LONG_LONG_INT   64

Definition at line 93 of file tree_manipulation.hpp.

Referenced by tree_manipulation::GetUnsignedLongLongType().

Typedef Documentation

◆ tree_manipulationConstRef

Definition at line 758 of file tree_manipulation.hpp.

◆ tree_manipulationRef

Definition at line 757 of file tree_manipulation.hpp.

Function Documentation

◆ CONSTREF_FORWARD_DECL() [1/2]

CONSTREF_FORWARD_DECL ( Parameter  )

◆ CONSTREF_FORWARD_DECL() [2/2]

CONSTREF_FORWARD_DECL ( tree_node  )

◆ REF_FORWARD_DECL() [1/6]

REF_FORWARD_DECL ( CallGraphManager  )

◆ REF_FORWARD_DECL() [2/6]

REF_FORWARD_DECL ( tree_node  )

◆ REF_FORWARD_DECL() [3/6]

REF_FORWARD_DECL ( tree_manager  )

◆ REF_FORWARD_DECL() [4/6]

REF_FORWARD_DECL ( tree_manipulation  )

◆ REF_FORWARD_DECL() [5/6]

REF_FORWARD_DECL ( application_manager  )

◆ REF_FORWARD_DECL() [6/6]

REF_FORWARD_DECL ( bloc  )

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