aGrUM  0.16.0
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 577 of file O3prm.h.

Member Typedef Documentation

◆ O3LabelList

Definition at line 579 of file O3prm.h.

Constructor & Destructor Documentation

◆ O3Aggregate() [1/3]

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

Definition at line 1013 of file O3prm.cpp.

1013  :
1015  __parameters() {
1016  GUM_CONSTRUCTOR(O3Aggregate);
1017  }
O3LabelList __parameters
Definition: O3prm.h:609

◆ O3Aggregate() [2/3]

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

Definition at line 1019 of file O3prm.cpp.

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

◆ O3Aggregate() [3/3]

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

Definition at line 1026 of file O3prm.cpp.

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

◆ ~O3Aggregate()

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

Definition at line 1034 of file O3prm.cpp.

1034 { GUM_DESTRUCTOR(O3Aggregate); }

Member Function Documentation

◆ aggregateType() [1/2]

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

Definition at line 1060 of file O3prm.cpp.

References __aggregateType.

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

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

◆ aggregateType() [2/2]

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

Definition at line 1062 of file O3prm.cpp.

References __aggregateType.

1062 { return __aggregateType; }

◆ name() [1/2]

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

Definition at line 1064 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().

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

◆ name() [2/2]

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

Definition at line 1066 of file O3prm.cpp.

References __name.

1066 { return __name; }

◆ operator=() [1/2]

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

Definition at line 1036 of file O3prm.cpp.

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

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

◆ operator=() [2/2]

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

Definition at line 1046 of file O3prm.cpp.

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

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

◆ parameters() [1/2]

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

Definition at line 1074 of file O3prm.cpp.

References __parameters.

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

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

◆ parameters() [2/2]

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

Definition at line 1076 of file O3prm.cpp.

References __parameters.

1076  {
1077  return __parameters;
1078  }
O3LabelList __parameters
Definition: O3prm.h:609

◆ parents() [1/2]

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

Definition at line 1068 of file O3prm.cpp.

References __parents.

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

1068 { 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 1070 of file O3prm.cpp.

References __parents.

1070  {
1071  return __parents;
1072  }

◆ variableType() [1/2]

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

Definition at line 1056 of file O3prm.cpp.

References __variableType.

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

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

◆ variableType() [2/2]

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

Definition at line 1058 of file O3prm.cpp.

References __variableType.

1058 { return __variableType; }

Member Data Documentation

◆ __aggregateType

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

Definition at line 606 of file O3prm.h.

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

◆ __name

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

Definition at line 607 of file O3prm.h.

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

◆ __parameters

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

Definition at line 609 of file O3prm.h.

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

◆ __parents

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

Definition at line 608 of file O3prm.h.

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

◆ __variableType

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

Definition at line 605 of file O3prm.h.

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


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