aGrUM 3.2.0
a C++ library for (probabilistic) graphical models
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:
[legend]

Public Member Functions

 O3Formula ()
 O3Formula (const O3Position &pos, const Formula &formula)
 O3Formula (const O3Formula &src)
 O3Formula (O3Formula &&src)
 ~O3Formula ()
O3Formula & operator= (const O3Formula &src)
O3Formula & operator= (O3Formula &&src)
O3Position & position ()
const O3Position & position () const
Formula & formula ()
const Formula & formula () const

Private Attributes

O3Position _pos_
std::unique_ptr< Formula > _formula_

Detailed Description

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

Definition at line 107 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Formula() [1/4]

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

Definition at line 197 of file O3prm.cpp.

197 : _pos_(), _formula_(std::unique_ptr< Formula >(new Formula(""))) {
198 GUM_CONSTRUCTOR(O3Formula);
199 }
Formula(short s)
Constructor.
Definition formula.cpp:204
std::unique_ptr< Formula > _formula_
Definition O3prm.h:126

References O3Formula(), _formula_, and _pos_.

Referenced by O3Formula(), O3Formula(), O3Formula(), O3Formula(), ~O3Formula(), operator=(), and operator=().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ O3Formula() [2/4]

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

Definition at line 201 of file O3prm.cpp.

201 :
202 _pos_(pos), _formula_(std::unique_ptr< Formula >(new Formula(formula))) {
203 GUM_CONSTRUCTOR(O3Formula);
204 }

References O3Formula(), _formula_, _pos_, and formula().

Here is the call graph for this function:

◆ O3Formula() [3/4]

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

Definition at line 206 of file O3prm.cpp.

206 :
207 _pos_(src._pos_), _formula_(std::unique_ptr< Formula >(new Formula(src.formula()))) {
208 GUM_CONS_CPY(O3Formula);
209 }

References O3Formula(), _formula_, _pos_, and formula().

Here is the call graph for this function:

◆ O3Formula() [4/4]

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

Definition at line 211 of file O3prm.cpp.

211 :
212 _pos_(std::move(src._pos_)), _formula_(std::move(src._formula_)) {
213 GUM_CONS_MOV(O3Formula);
214 }

References O3Formula(), _formula_, and _pos_.

Here is the call graph for this function:

◆ ~O3Formula()

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

Definition at line 216 of file O3prm.cpp.

216 {
217 GUM_DESTRUCTOR(O3Formula);
218 ;
219 }

References O3Formula().

Here is the call graph for this function:

Member Function Documentation

◆ formula() [1/2]

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

Definition at line 241 of file O3prm.cpp.

241{ return *_formula_; }

References _formula_.

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

Here is the caller graph for this function:

◆ formula() [2/2]

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

Definition at line 239 of file O3prm.cpp.

239{ return *_formula_; }

References _formula_.

◆ operator=() [1/2]

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

Definition at line 221 of file O3prm.cpp.

221 {
222 if (this == &src) { return *this; }
223 _pos_ = src._pos_;
224 _formula_ = std::unique_ptr< Formula >(new Formula(src.formula()));
225 return *this;
226 }

References gum::Formula::Formula(), O3Formula(), _formula_, _pos_, and formula().

Here is the call graph for this function:

◆ operator=() [2/2]

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

Definition at line 228 of file O3prm.cpp.

228 {
229 if (this == &src) { return *this; }
230 _pos_ = std::move(src._pos_);
231 _formula_ = std::move(src._formula_);
232 return *this;
233 }

References O3Formula(), _formula_, and _pos_.

Here is the call graph for this function:

◆ position() [1/2]

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

Definition at line 237 of file O3prm.cpp.

237{ return _pos_; }

References _pos_.

◆ position() [2/2]

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

Definition at line 235 of file O3prm.cpp.

235{ return _pos_; }

References _pos_.

Member Data Documentation

◆ _formula_

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

Definition at line 126 of file O3prm.h.

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

◆ _pos_

O3Position gum::prm::o3prm::O3Formula::_pos_
private

Definition at line 125 of file O3prm.h.

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


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