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

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

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

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

Public Member Functions

 O3Aggregate ()
 
 O3Aggregate (const O3Aggregate &src)
 
 O3Aggregate (O3Aggregate &&src)
 
virtual ~O3Aggregate ()
 
O3Aggregateoperator= (const O3Aggregate &src)
 
O3Aggregateoperator= (O3Aggregate &&src)
 
O3LabelvariableType ()
 
const O3LabelvariableType () const
 
O3LabelaggregateType ()
 
const O3LabelaggregateType () const
 
O3Labelname ()
 
const O3Labelname () const
 
O3LabelListparents ()
 
const O3LabelListparents () const
 
O3LabelListparameters ()
 
const O3LabelListparameters () const
 

Public Types

using O3LabelList = std::vector< O3Label >
 

Detailed Description

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

Definition at line 575 of file O3prm.h.

Member Typedef Documentation

◆ O3LabelList

Definition at line 577 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Aggregate() [1/3]

gum::prm::o3prm::O3Aggregate::O3Aggregate ( )

Definition at line 1011 of file O3prm.cpp.

1011  :
1013  __parameters() {
1014  GUM_CONSTRUCTOR(O3Aggregate);
1015  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ O3Aggregate() [2/3]

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

Definition at line 1017 of file O3prm.cpp.

1017  :
1018  __variableType(src.__variableType), __aggregateType(src.__aggregateType),
1019  __name(src.__name), __parents(src.__parents),
1020  __parameters(src.__parameters) {
1021  GUM_CONS_CPY(O3Aggregate);
1022  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ O3Aggregate() [3/3]

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

Definition at line 1024 of file O3prm.cpp.

1024  :
1025  __variableType(std::move(src.__variableType)),
1026  __aggregateType(std::move(src.__aggregateType)),
1027  __name(std::move(src.__name)), __parents(std::move(src.__parents)),
1028  __parameters(std::move(src.__parameters)) {
1029  GUM_CONS_MOV(O3Aggregate);
1030  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ ~O3Aggregate()

gum::prm::o3prm::O3Aggregate::~O3Aggregate ( )
virtual

Definition at line 1032 of file O3prm.cpp.

1032 { GUM_DESTRUCTOR(O3Aggregate); }

Member Function Documentation

◆ aggregateType() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::aggregateType ( )

Definition at line 1058 of file O3prm.cpp.

References __aggregateType.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkAggParameters().

1058 { return __aggregateType; }
+ Here is the caller graph for this function:

◆ aggregateType() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::aggregateType ( ) const

Definition at line 1060 of file O3prm.cpp.

References __aggregateType.

1060 { return __aggregateType; }

◆ name() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::name ( )

Definition at line 1062 of file O3prm.cpp.

References __name.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkAggTypeLegality(), gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkParametersNumber(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkParameterValue().

1062 { return __name; }
+ Here is the caller graph for this function:

◆ name() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::name ( ) const

Definition at line 1064 of file O3prm.cpp.

References __name.

1064 { return __name; }

◆ operator=() [1/2]

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

Definition at line 1034 of file O3prm.cpp.

References __aggregateType, __name, __parameters, __parents, and __variableType.

1034  {
1035  if (this == &src) { return *this; }
1036  __aggregateType = src.__aggregateType;
1037  __variableType = src.__variableType;
1038  __name = src.__name;
1039  __parents = src.__parents;
1040  __parameters = src.__parameters;
1041  return *this;
1042  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ operator=() [2/2]

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

Definition at line 1044 of file O3prm.cpp.

References __aggregateType, __name, __parameters, __parents, and __variableType.

1044  {
1045  if (this == &src) { return *this; }
1046  __aggregateType = std::move(src.__aggregateType);
1047  __variableType = std::move(src.__variableType);
1048  __name = std::move(src.__name);
1049  __parents = std::move(src.__parents);
1050  __parameters = std::move(src.__parameters);
1051  return *this;
1052  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ parameters() [1/2]

O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parameters ( )

Definition at line 1072 of file O3prm.cpp.

References __parameters.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkParametersNumber(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkParameterValue().

1072 { return __parameters; }
O3LabelList __parameters
Definition: O3prm.h:607
+ Here is the caller graph for this function:

◆ parameters() [2/2]

const O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parameters ( ) const

Definition at line 1074 of file O3prm.cpp.

References __parameters.

1074  {
1075  return __parameters;
1076  }
O3LabelList __parameters
Definition: O3prm.h:607

◆ parents() [1/2]

O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parents ( )

Definition at line 1066 of file O3prm.cpp.

References __parents.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkAggParents().

1066 { return __parents; }
+ Here is the caller graph for this function:

◆ parents() [2/2]

const O3Aggregate::O3LabelList & gum::prm::o3prm::O3Aggregate::parents ( ) const

Definition at line 1068 of file O3prm.cpp.

References __parents.

1068  {
1069  return __parents;
1070  }

◆ variableType() [1/2]

O3Label & gum::prm::o3prm::O3Aggregate::variableType ( )

Definition at line 1054 of file O3prm.cpp.

References __variableType.

Referenced by gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkAggregateForDeclaration(), and gum::prm::o3prm::O3ClassFactory< GUM_SCALAR >::__checkAggTypeLegality().

1054 { return __variableType; }
+ Here is the caller graph for this function:

◆ variableType() [2/2]

const O3Label & gum::prm::o3prm::O3Aggregate::variableType ( ) const

Definition at line 1056 of file O3prm.cpp.

References __variableType.

1056 { return __variableType; }

Member Data Documentation

◆ __aggregateType

O3Label gum::prm::o3prm::O3Aggregate::__aggregateType
private

Definition at line 604 of file O3prm.h.

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

◆ __name

O3Label gum::prm::o3prm::O3Aggregate::__name
private

Definition at line 605 of file O3prm.h.

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

◆ __parameters

O3LabelList gum::prm::o3prm::O3Aggregate::__parameters
private

Definition at line 607 of file O3prm.h.

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

◆ __parents

O3LabelList gum::prm::o3prm::O3Aggregate::__parents
private

Definition at line 606 of file O3prm.h.

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

◆ __variableType

O3Label gum::prm::o3prm::O3Aggregate::__variableType
private

Definition at line 603 of file O3prm.h.

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


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