|
Jlm
|
Proxy object to observe changes to a region. More...
#include <region.hpp>


Public Member Functions | |
| virtual | ~RegionObserver () noexcept |
| RegionObserver (const Region ®ion) | |
| RegionObserver (const RegionObserver &)=delete | |
| RegionObserver & | operator= (const RegionObserver &)=delete |
| virtual void | onNodeCreate (Node *node)=0 |
| virtual void | onNodeDestroy (Node *node)=0 |
| virtual void | onInputCreate (Input *input)=0 |
| virtual void | onInputChange (Input *input, Output *old_origin, Output *new_origin)=0 |
| virtual void | onInputDestroy (Input *input)=0 |
Private Attributes | |
| RegionObserver ** | pprev_ |
| RegionObserver * | next_ |
Friends | |
| class | Region |
Proxy object to observe changes to a region.
Subscribers can implement and instantiate this interface for a specific region to receive notifications about the region.
Definition at line 782 of file region.hpp.
|
virtualnoexcept |
Definition at line 588 of file region.cpp.
|
explicit |
Definition at line 597 of file region.cpp.
|
delete |
|
pure virtual |
Called right after the given input gets a new origin.
| input | the input. |
| old_origin | the input's old origin. |
| new_origin | the input's new origin. |
Implemented in jlm::rvsdg::detail::ForwardingObserver< Traverser >, jlm::rvsdg::detail::ForwardingObserver< BottomUpTraverserGeneric >, jlm::rvsdg::detail::ForwardingObserver< TopDownTraverserGeneric >, and jlm::rvsdg::RecordingObserver.
|
pure virtual |
Called after a node gets a new input, or the region gets a new result. This method is not called when creating new nodes, only modifying existing nodes.
| input | the new input |
Implemented in jlm::rvsdg::detail::ForwardingObserver< Traverser >, jlm::rvsdg::detail::ForwardingObserver< BottomUpTraverserGeneric >, jlm::rvsdg::detail::ForwardingObserver< TopDownTraverserGeneric >, and jlm::rvsdg::RecordingObserver.
|
pure virtual |
Called right before a node input or region result is removed. This method is not called when deleting nodes, only modifying existing nodes.
| input | the input that is removed |
Implemented in jlm::rvsdg::detail::ForwardingObserver< Traverser >, jlm::rvsdg::detail::ForwardingObserver< BottomUpTraverserGeneric >, jlm::rvsdg::detail::ForwardingObserver< TopDownTraverserGeneric >, and jlm::rvsdg::RecordingObserver.
|
pure virtual |
Called right after a node is added to the region, after the node has its inputs and output added.
| node | the node being added |
Implemented in jlm::rvsdg::detail::ForwardingObserver< Traverser >, jlm::rvsdg::detail::ForwardingObserver< BottomUpTraverserGeneric >, jlm::rvsdg::detail::ForwardingObserver< TopDownTraverserGeneric >, and jlm::rvsdg::RecordingObserver.
|
pure virtual |
Called right before a node is removed from the region, before the node has its inputs and outputs removed.
| node | the node being removed |
Implemented in jlm::rvsdg::detail::ForwardingObserver< Traverser >, jlm::rvsdg::detail::ForwardingObserver< BottomUpTraverserGeneric >, jlm::rvsdg::detail::ForwardingObserver< TopDownTraverserGeneric >, and jlm::rvsdg::RecordingObserver.
|
delete |
|
friend |
Definition at line 839 of file region.hpp.
|
private |
Definition at line 837 of file region.hpp.
|
private |
Definition at line 836 of file region.hpp.