37 #ifndef GUM_PRM_O3PRM_PRM_H 38 # define GUM_PRM_O3PRM_PRM_H 63 const std::string&
file()
const;
185 std::string& label();
186 const std::string& label()
const;
222 const O3Label& superLabel()
const;
228 const bool& deprecated()
const;
268 const bool& deprecated()
const;
301 std::vector< O3Float >& values();
302 const std::vector< O3Float >& values()
const;
305 const bool& deprecated()
const;
339 bool isArray()
const;
373 const O3Label& superLabel()
const;
382 std::unique_ptr< O3InterfaceElementList >
__elts;
454 bool isArray()
const;
485 virtual const O3Label& type()
const;
488 virtual const O3Label& name()
const;
493 virtual std::unique_ptr< O3Attribute > copy()
const = 0;
527 virtual std::unique_ptr< O3Attribute > copy()
const;
544 using O3Rule = std::pair< O3LabelList, O3FormulaList >;
562 virtual std::unique_ptr< O3Attribute > copy()
const;
588 const O3Label& variableType()
const;
591 const O3Label& aggregateType()
const;
640 const O3Label& superLabel()
const;
663 std::unique_ptr< O3ReferenceSlotList >
__refs;
665 std::unique_ptr< O3AggregateList >
__aggs;
686 const O3Label& leftInstance()
const;
692 const O3Label& leftReference()
const;
695 const O3Label& rightInstance()
const;
726 const O3Label& leftInstance()
const;
732 const O3Label& leftReference()
const;
735 const O3Label& rightInstance()
const;
773 bool isInteger()
const;
943 #endif // GUM_PRM_O3PRM_PRM_H std::vector< std::unique_ptr< O3RealType > > O3RealTypeList
std::pair< O3LabelList, O3FormulaList > O3Rule
std::vector< O3ReferenceSlot > O3ReferenceSlotList
O3Position & operator=(const O3Position &src)
std::unique_ptr< O3ParameterList > __params
std::vector< O3InstanceParameter > O3InstanceParameterList
O3IncrementList __increments
The O3Increment is part of the AST of the O3PRM language.
std::vector< O3Increment > O3IncrementList
The O3InstanceParameter is part of the AST of the O3PRM language.
The O3Parameter is part of the AST of the O3PRM language.
The O3IntType is part of the AST of the O3PRM language.
std::unique_ptr< O3ReferenceSlotList > __refs
std::vector< std::unique_ptr< O3Attribute > > O3AttributeList
std::unique_ptr< O3LabelList > __interfaces
std::vector< std::unique_ptr< O3Import > > O3ImportList
The O3Aggregate is part of the AST of the O3PRM language.
std::ostream & operator<<(std::ostream &o, const O3Label &src)
std::vector< std::unique_ptr< O3IntType > > O3IntTypeList
The O3RealType is part of the AST of the O3PRM language.
std::unique_ptr< O3AttributeList > __attrs
std::vector< O3Label > O3LabelList
The O3Type is part of the AST of the O3PRM language.
The O3Label is part of the AST of the O3PRM language.
The O3Attribute is part of the AST of the O3PRM language.
std::unique_ptr< O3FormulaList > __values
gum is the global namespace for all aGrUM entities
O3RealTypeList __real_types
The O3Import is part of the AST of the O3PRM language.
std::vector< O3Label > O3LabelList
std::vector< O3Formula > O3FormulaList
O3IntTypeList __int_types
std::vector< std::unique_ptr< O3Interface > > O3InterfaceList
The O3RuleCPT is part of the AST of the O3PRM language.
The O3Position is part of the AST of the O3PRM language.
std::unique_ptr< O3AggregateList > __aggs
std::vector< O3Float > __values
std::unique_ptr< O3RuleList > __rules
std::vector< std::unique_ptr< O3Class > > O3ClassList
The O3Class is part of the AST of the O3PRM language.
std::vector< O3Rule > O3RuleList
The O3Instance is part of the AST of the O3PRM language.
std::unique_ptr< O3InterfaceElementList > __elts
The O3ReferenceSlot is part of the AST of the O3PRM language.
std::vector< LabelPair > LabelMap
O3InstanceParameterList __parameters
std::vector< O3Aggregate > O3AggregateList
std::vector< O3Parameter > O3ParameterList
std::pair< O3Label, O3Label > LabelPair
The O3System is part of the AST of the O3PRM language.
std::vector< std::unique_ptr< O3Type > > O3TypeList
O3InterfaceList __interfaces
std::vector< O3Formula > O3FormulaList
The O3Float is part of the AST of the O3PRM language.
The O3RawCPT is part of the AST of the O3PRM language.
std::vector< O3Label > O3LabelList
The O3Assignment is part of the AST of the O3PRM language.
std::vector< O3InterfaceElement > O3InterfaceElementList
The O3Integer is part of the AST of the O3PRM language.
std::vector< O3Instance > O3InstanceList
The O3InterfaceElement is part of the AST of the O3PRM language.
The O3PRM is part of the AST of the O3PRM language.
O3InstanceList __instances
The O3Interface is part of the AST of the O3PRM language.
O3AssignmentList __assigments
std::vector< std::unique_ptr< O3System > > O3SystemList
Class hash tables iterators.
std::vector< O3Assignment > O3AssignmentList