aGrUM  0.16.0
gum::DAGCycleDetector::Change Class Reference

the base class indicating the possible changes More...

#include <DAGCycleDetector.h>

+ Inheritance diagram for gum::DAGCycleDetector::Change:

Public Member Functions

 Change (ChangeType type, NodeId tail, NodeId head) noexcept
 
 Change (const Change &from) noexcept
 
 Change (Change &&from) noexcept
 
virtual ~Change () noexcept
 
Accessors/Modifiers
ChangeType type () const noexcept
 returns the type of the operation More...
 
NodeId tail () const noexcept
 indicates the tail of the arc involved in the modification More...
 
NodeId head () const noexcept
 indicates the head of the arc involved in the modification More...
 

Protected Member Functions

Changeoperator= (const Change &from) noexcept
 
Changeoperator= (Change &&from) noexcept
 

Detailed Description

the base class indicating the possible changes

Definition at line 68 of file DAGCycleDetector.h.

Constructor & Destructor Documentation

◆ Change() [1/3]

INLINE gum::DAGCycleDetector::Change::Change ( ChangeType  type,
NodeId  tail,
NodeId  head 
)
noexcept

Definition at line 39 of file DAGCycleDetector_inl.h.

41  :
42  __type{type},
43  __tail{tail}, __head{head} {
44  GUM_CONSTRUCTOR(DAGCycleDetector::Change);
45  }
NodeId tail() const noexcept
indicates the tail of the arc involved in the modification
ChangeType type() const noexcept
returns the type of the operation
ChangeType __type
the type of modification
NodeId head() const noexcept
indicates the head of the arc involved in the modification
NodeId __head
the head of the arc to be modified
NodeId __tail
the tail of the arc to be modified

◆ Change() [2/3]

INLINE gum::DAGCycleDetector::Change::Change ( const Change from)
noexcept

Definition at line 49 of file DAGCycleDetector_inl.h.

49  :
50  __type{from.__type}, __tail{from.__tail}, __head{from.__head} {
51  GUM_CONS_CPY(DAGCycleDetector::Change);
52  }
ChangeType __type
the type of modification
NodeId __head
the head of the arc to be modified
NodeId __tail
the tail of the arc to be modified

◆ Change() [3/3]

INLINE gum::DAGCycleDetector::Change::Change ( DAGCycleDetector::Change &&  from)
noexcept

Definition at line 56 of file DAGCycleDetector_inl.h.

56  :
57  __type{from.__type}, __tail{from.__tail}, __head{from.__head} {
58  GUM_CONS_MOV(DAGCycleDetector::Change);
59  }
ChangeType __type
the type of modification
NodeId __head
the head of the arc to be modified
NodeId __tail
the tail of the arc to be modified

◆ ~Change()

INLINE gum::DAGCycleDetector::Change::~Change ( )
virtualnoexcept

Definition at line 62 of file DAGCycleDetector_inl.h.

References operator=().

62  {
63  GUM_DESTRUCTOR(DAGCycleDetector::Change);
64  }
+ Here is the call graph for this function:

Member Function Documentation

◆ head()

INLINE NodeId gum::DAGCycleDetector::Change::head ( ) const
noexcept

indicates the head of the arc involved in the modification

Definition at line 94 of file DAGCycleDetector_inl.h.

References __head.

94 { return __head; }
NodeId __head
the head of the arc to be modified

◆ operator=() [1/2]

INLINE DAGCycleDetector::Change & gum::DAGCycleDetector::Change::operator= ( const Change from)
protectednoexcept

Definition at line 68 of file DAGCycleDetector_inl.h.

References __head, __tail, and __type.

Referenced by gum::DAGCycleDetector::ArcAdd::operator=(), gum::DAGCycleDetector::ArcDel::operator=(), gum::DAGCycleDetector::ArcReverse::operator=(), and ~Change().

68  {
69  __type = from.__type;
70  __tail = from.__tail;
71  __head = from.__head;
72  return *this;
73  }
ChangeType __type
the type of modification
NodeId __head
the head of the arc to be modified
NodeId __tail
the tail of the arc to be modified
+ Here is the caller graph for this function:

◆ operator=() [2/2]

INLINE DAGCycleDetector::Change & gum::DAGCycleDetector::Change::operator= ( DAGCycleDetector::Change &&  from)
protectednoexcept

Definition at line 77 of file DAGCycleDetector_inl.h.

References __head, __tail, and __type.

77  {
78  __type = from.__type;
79  __tail = from.__tail;
80  __head = from.__head;
81  return *this;
82  }
ChangeType __type
the type of modification
NodeId __head
the head of the arc to be modified
NodeId __tail
the tail of the arc to be modified

◆ tail()

INLINE NodeId gum::DAGCycleDetector::Change::tail ( ) const
noexcept

indicates the tail of the arc involved in the modification

Definition at line 91 of file DAGCycleDetector_inl.h.

References __tail.

91 { return __tail; }
NodeId __tail
the tail of the arc to be modified

◆ type()

INLINE DAGCycleDetector::ChangeType gum::DAGCycleDetector::Change::type ( ) const
noexcept

returns the type of the operation

Definition at line 85 of file DAGCycleDetector_inl.h.

References __type.

86  {
87  return __type;
88  }
ChangeType __type
the type of modification

Member Data Documentation

◆ __head

NodeId gum::DAGCycleDetector::Change::__head
private

the head of the arc to be modified

Definition at line 104 of file DAGCycleDetector.h.

Referenced by head(), and operator=().

◆ __tail

NodeId gum::DAGCycleDetector::Change::__tail
private

the tail of the arc to be modified

Definition at line 101 of file DAGCycleDetector.h.

Referenced by operator=(), and tail().

◆ __type

ChangeType gum::DAGCycleDetector::Change::__type
private

the type of modification

Definition at line 98 of file DAGCycleDetector.h.

Referenced by operator=(), and type().


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