aGrUM  0.14.2
gum::prm::o3prm::O3Formula Class Reference

The O3Formula is part of the AST of the O3PRM language. More...

#include <agrum/PRM/o3prm/O3prm.h>

+ Collaboration diagram for gum::prm::o3prm::O3Formula:

Public Member Functions

 O3Formula ()
 
 O3Formula (const O3Position &pos, const Formula &formula)
 
 O3Formula (const O3Formula &src)
 
 O3Formula (O3Formula &&src)
 
 ~O3Formula ()
 
O3Formulaoperator= (const O3Formula &src)
 
O3Formulaoperator= (O3Formula &&src)
 
O3Positionposition ()
 
const O3Positionposition () const
 
Formulaformula ()
 
const Formulaformula () const
 

Detailed Description

The O3Formula is part of the AST of the O3PRM language.

Definition at line 84 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Formula() [1/4]

gum::prm::o3prm::O3Formula::O3Formula ( )

Definition at line 160 of file O3prm.cpp.

160  :
161  __pos(), __formula(std::unique_ptr< Formula >(new Formula(""))) {
162  GUM_CONSTRUCTOR(O3Formula);
163  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ O3Formula() [2/4]

gum::prm::o3prm::O3Formula::O3Formula ( const O3Position pos,
const Formula formula 
)

Definition at line 165 of file O3prm.cpp.

165  :
166  __pos(pos), __formula(std::unique_ptr< Formula >(new Formula(formula))) {
167  GUM_CONSTRUCTOR(O3Formula);
168  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ O3Formula() [3/4]

gum::prm::o3prm::O3Formula::O3Formula ( const O3Formula src)

Definition at line 170 of file O3prm.cpp.

170  :
171  __pos(src.__pos),
172  __formula(std::unique_ptr< Formula >(new Formula(src.formula()))) {
173  GUM_CONS_CPY(O3Formula);
174  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ O3Formula() [4/4]

gum::prm::o3prm::O3Formula::O3Formula ( O3Formula &&  src)

Definition at line 176 of file O3prm.cpp.

176  :
177  __pos(std::move(src.__pos)), __formula(std::move(src.__formula)) {
178  GUM_CONS_MOV(O3Formula);
179  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ ~O3Formula()

gum::prm::o3prm::O3Formula::~O3Formula ( )

Definition at line 181 of file O3prm.cpp.

181 { GUM_DESTRUCTOR(O3Formula); }

Member Function Documentation

◆ formula() [1/2]

Formula & gum::prm::o3prm::O3Formula::formula ( )

Definition at line 201 of file O3prm.cpp.

References __formula.

Referenced by operator=().

201 { return *__formula; }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103
+ Here is the caller graph for this function:

◆ formula() [2/2]

const Formula & gum::prm::o3prm::O3Formula::formula ( ) const

Definition at line 200 of file O3prm.cpp.

References __formula.

200 { return *__formula; }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ operator=() [1/2]

O3Formula & gum::prm::o3prm::O3Formula::operator= ( const O3Formula src)

Definition at line 183 of file O3prm.cpp.

References __formula, __pos, and formula().

183  {
184  if (this == &src) { return *this; }
185  __pos = src.__pos;
186  __formula = std::unique_ptr< Formula >(new Formula(src.formula()));
187  return *this;
188  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103
+ Here is the call graph for this function:

◆ operator=() [2/2]

O3Formula & gum::prm::o3prm::O3Formula::operator= ( O3Formula &&  src)

Definition at line 190 of file O3prm.cpp.

References __formula, and __pos.

190  {
191  if (this == &src) { return *this; }
192  __pos = std::move(src.__pos);
193  __formula = std::move(src.__formula);
194  return *this;
195  }
std::unique_ptr< Formula > __formula
Definition: O3prm.h:103

◆ position() [1/2]

O3Position & gum::prm::o3prm::O3Formula::position ( )

Definition at line 198 of file O3prm.cpp.

References __pos.

198 { return __pos; }

◆ position() [2/2]

const O3Position & gum::prm::o3prm::O3Formula::position ( ) const

Definition at line 197 of file O3prm.cpp.

References __pos.

197 { return __pos; }

Member Data Documentation

◆ __formula

std::unique_ptr< Formula > gum::prm::o3prm::O3Formula::__formula
private

Definition at line 103 of file O3prm.h.

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

◆ __pos

O3Position gum::prm::o3prm::O3Formula::__pos
private

Definition at line 102 of file O3prm.h.

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


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