aGrUM  0.20.2
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:

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 85 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Formula() [1/4]

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

Definition at line 161 of file O3prm.cpp.

161  :
162  pos__(), formula__(std::unique_ptr< Formula >(new Formula(""))) {
163  GUM_CONSTRUCTOR(O3Formula);
164  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ O3Formula() [2/4]

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

Definition at line 166 of file O3prm.cpp.

166  :
167  pos__(pos), formula__(std::unique_ptr< Formula >(new Formula(formula))) {
168  GUM_CONSTRUCTOR(O3Formula);
169  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ O3Formula() [3/4]

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

Definition at line 171 of file O3prm.cpp.

171  :
172  pos__(src.pos__),
173  formula__(std::unique_ptr< Formula >(new Formula(src.formula()))) {
174  GUM_CONS_CPY(O3Formula);
175  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ O3Formula() [4/4]

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

Definition at line 177 of file O3prm.cpp.

177  :
178  pos__(std::move(src.pos__)), formula__(std::move(src.formula__)) {
179  GUM_CONS_MOV(O3Formula);
180  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ ~O3Formula()

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

Definition at line 182 of file O3prm.cpp.

182 { GUM_DESTRUCTOR(O3Formula); }

Member Function Documentation

◆ formula() [1/2]

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

Definition at line 202 of file O3prm.cpp.

202 { return *formula__; }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ formula() [2/2]

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

Definition at line 201 of file O3prm.cpp.

201 { return *formula__; }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ operator=() [1/2]

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

Definition at line 184 of file O3prm.cpp.

184  {
185  if (this == &src) { return *this; }
186  pos__ = src.pos__;
187  formula__ = std::unique_ptr< Formula >(new Formula(src.formula()));
188  return *this;
189  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ operator=() [2/2]

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

Definition at line 191 of file O3prm.cpp.

191  {
192  if (this == &src) { return *this; }
193  pos__ = std::move(src.pos__);
194  formula__ = std::move(src.formula__);
195  return *this;
196  }
std::unique_ptr< Formula > formula__
Definition: O3prm.h:104

◆ position() [1/2]

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

Definition at line 199 of file O3prm.cpp.

199 { return pos__; }

◆ position() [2/2]

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

Definition at line 198 of file O3prm.cpp.

198 { return pos__; }

Member Data Documentation

◆ formula__

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

Definition at line 104 of file O3prm.h.

◆ pos__

O3Position gum::prm::o3prm::O3Formula::pos__
private

Definition at line 103 of file O3prm.h.


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