|
LIBINT 2.9.0
|
CTimeEntity is an Entity of type T that exists at compile-time of the generated code (hence has a value known at compile-time) More...
#include <entity.h>


Public Member Functions | |
| CTimeEntity (const T &val) | |
| unsigned int | size () const override |
| Implementation of DGVertex::size() | |
| bool | equiv (const std::shared_ptr< DGVertex > &a) const override |
| Implementation of DGVertex::equiv() | |
| const std::string & | label () const override |
| Implementation of DGVertex::label() | |
| const std::string & | id () const override |
| Implementation of DGVertex::id() | |
| std::string | description () const override |
| Implementation of DGVertex::description() | |
| KeyTraits< T >::ReturnType | value () const |
| returns the value | |
| DGVertex::KeyReturnType | key () const override |
| Implements Hashable::key() | |
Public Member Functions inherited from libint2::Entity | |
| const std::string & | id () const |
| Return id string. | |
Public Member Functions inherited from libint2::DGVertex | |
| DGVertex (ClassID tid) | |
| Sets typeid to tid. | |
| DGVertex (ClassID tid, const std::vector< std::shared_ptr< DGArc > > &parents, const std::vector< std::shared_ptr< DGArc > > &children) | |
| Sets typeid to tid. | |
| DGVertex (const DGVertex &v) | |
| This is a copy constructor. | |
| void | make_a_target () |
| make_a_target() marks this vertex as a target | |
| bool | is_a_target () const |
| is_a_target() returns true if this vertex is a target | |
| virtual void | add_exit_arc (const std::shared_ptr< DGArc > &) |
| add_exit_arc(arc) adds arc as an arc connecting to children of this vertex. | |
| virtual void | del_exit_arcs () |
| del_exit_arcs() removes all exit arcs from this and corresponding children vertices. | |
| void | replace_exit_arc (const std::shared_ptr< DGArc > &A, const std::shared_ptr< DGArc > &B) |
| replace_exit_arc() replaces A with B. | |
| void | detach () |
| this function detaches the vertex from other vertices. | |
| const ArcSetType & | exit_arcs () const |
| const ArcSetType & | entry_arcs () const |
| unsigned int | num_entry_arcs () const |
| returns the number of parents | |
| ArcSetType::const_iterator | first_entry_arc () const |
| returns parents::begin() | |
| ArcSetType::const_iterator | plast_entry_arc () const |
| returns parents::end() | |
| unsigned int | num_exit_arcs () const |
| returns the number of children | |
| ArcSetType::const_iterator | first_exit_arc () const |
| returns children::begin() | |
| ArcSetType::const_iterator | plast_exit_arc () const |
| returns children::end() | |
| const std::shared_ptr< DGArc > & | exit_arc (const std::shared_ptr< DGVertex > &v) const |
| return arc connecting this to v, otherwise null pointer | |
| bool | precomputed () const |
| precomputed() returns whether this DGVertex is precomputed. | |
| virtual void | print (std::ostream &os) const |
| print(os) prints vertex info to os | |
| const DirectedGraph * | dg () const |
| Returns pointer to the DirectedGraph to which this DGVertex belongs to. | |
| void | dg (const DirectedGraph *d) |
| Sets pointer to the DirectedGraph to which this DGVertex belongs to. | |
| const std::string & | graph_label () const |
| returns the label used for this vertex when visualizing graph. | |
| void | set_graph_label (const std::string &graph_label) |
| sets the graph label | |
| const std::shared_ptr< DRTree > & | subtree () const |
| Returns the subtree to which this vertex belongs. | |
| void | refer_this_to (const std::shared_ptr< DGVertex > &V) |
| refer_this_to(V) makes this vertex act like a reference to V so that calls to symbol() and address() report code symbol and stack address of V | |
| bool | refers_to_another () const |
| refers to another vertex? | |
| const std::string & | symbol () const |
| returns the code symbol. can throw SymbolNotSet | |
| void | set_symbol (const std::string &symbol) |
| sets the code symbol | |
| bool | symbol_set () const |
| returns true if the symbol has been set | |
| void | reset_symbol () |
| this function void the symbol, i.e. | |
| Address | address () const |
| returns the address of this quantity on Libint's stack. | |
| void | set_address (const Address &address) |
| sets the address of this quantity on Libint's stack | |
| bool | address_set () const |
| returns true if the address has been set | |
| void | need_to_compute (bool ntc) |
| indicates whether this vertex needs to be computed. | |
| void | not_need_to_compute () |
| shortcut to need_to_compute(false) | |
| bool | need_to_compute () const |
| returns true if this index needs to be computed. | |
| bool | declared () const |
| void | declared (bool d) |
| void | prepare_to_traverse () |
| prepare_to_traverse() must be called before traversal of the graph starts | |
| unsigned int | tag () |
| tag() tags the vertex and returns the total number of tags this vertex has received | |
| void | schedule () |
| schedule() marks the vertex as scheduled, hence its code exists | |
| bool | scheduled () const |
| scheduled() returns true if the vertex has been scheduled | |
| std::shared_ptr< DGVertex > | postcalc () const |
| Returns pointer to vertex to be computed after this vertex, 0 if this is the last vertex. | |
| void | set_postcalc (const std::shared_ptr< DGVertex > &postcalc) |
| Sets postcalc. | |
| void | reset () |
| Resets the vertex, releasing all arcs. | |
| virtual void | unregister () const |
| If vertex is a singleton then remove it from the SingletonManager. | |
Additional Inherited Members | |
Public Types inherited from libint2::DGVertex | |
| typedef MemoryManager::Address | Address |
| The address on the stack during computation is described using this type. | |
| typedef MemoryManager::Size | Size |
| The size of a block the stack during computation is described using this type. | |
| typedef NotSet< Address > | AddressNotSet |
| Exception thrown if address is not set. | |
| typedef NotSet< std::string > | GraphLabelNotSet |
| Exception thrown if graph label is not set. | |
| typedef NotSet< std::string > | SymbolNotSet |
| Exception thrown if code symbol is not set. | |
| typedef KeyTypes::ClassID | ClassID |
| Type identifier. | |
| typedef KeyTypes::InstanceID | InstanceID |
| Instance identifier. | |
| typedef KeyTypes::InstanceID | KeyType |
| DGVertex provides function key() which computes key of type KeyType and returns it using KeyReturnType. | |
| typedef Hashable< KeyType, ComputeKey >::KeyReturnType | KeyReturnType |
| typedef std::list< std::shared_ptr< DGArc > > | ArcSetType |
| ArcSetType is a container used to maintain entry and exit arcs. | |
Public Types inherited from libint2::Hashable< KeyTypes::InstanceID, ComputeKey > | |
| typedef KeyTraits< KeyTypes::InstanceID >::ReturnType | KeyReturnType |
Public Attributes inherited from libint2::DGVertex | |
| ClassID | typeid_ |
| typeid stores the ClassID of the concrete type. | |
| InstanceID | instid_ |
| instid stores the InstanceID of the object. | |
Protected Member Functions inherited from libint2::Entity | |
| Entity (const std::string &id) | |
Protected Attributes inherited from libint2::Hashable< KeyTypes::InstanceID, ComputeKey > | |
| KeyStore< KeyTypes::InstanceID, OwnKey< KeyMP >::result > | key_ |
CTimeEntity is an Entity of type T that exists at compile-time of the generated code (hence has a value known at compile-time)
|
inlineoverridevirtual |
Implementation of DGVertex::description()
Implements libint2::DGVertex.
References libint2::CTimeEntity< T >::id().
|
inlineoverridevirtual |
Implementation of DGVertex::equiv()
Implements libint2::DGVertex.
References libint2::CTimeEntity< T >::id(), libint2::CTimeEntity< T >::key(), and libint2::DGVertex::typeid_.
|
inlineoverridevirtual |
Implementation of DGVertex::id()
Implements libint2::DGVertex.
References libint2::CTimeEntity< T >::label().
Referenced by libint2::CTimeEntity< T >::description(), and libint2::CTimeEntity< T >::equiv().
|
inlineoverridevirtual |
Implements Hashable::key()
Implements libint2::DGVertex.
References libint2::CTimeEntity< T >::value().
Referenced by libint2::CTimeEntity< T >::equiv().
|
inlineoverridevirtual |
Implementation of DGVertex::label()
Implements libint2::DGVertex.
References libint2::Entity::id().
Referenced by libint2::CTimeEntity< T >::id().
|
inlineoverridevirtual |
Implementation of DGVertex::size()
Implements libint2::DGVertex.