57#ifndef GUM_PRM_O3PRM_ERRORS_H
58# define GUM_PRM_O3PRM_ERRORS_H
60# ifndef DOXYGEN_SHOULD_SKIP_THIS
67 void O3PRM_TYPE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
69 void O3PRM_TYPE_AMBIGUOUS(
const O3Label& val,
70 const std::vector< std::string >& matches,
71 ErrorsContainer& errors);
73 void O3PRM_TYPE_RESERVED(
const O3Label& val, ErrorsContainer& errors);
75 void O3PRM_TYPE_DUPPLICATE(
const O3Label& val, ErrorsContainer& errors);
77 void O3PRM_TYPE_CYCLIC_INHERITANCE(
const O3Label& sub_type,
79 ErrorsContainer& errors);
81 void O3PRM_TYPE_UNKNOWN_LABEL(
const O3Label& type,
const O3Label& l, ErrorsContainer& errors);
83 void O3PRM_TYPE_INVALID_RANGE(
const O3IntType& val, ErrorsContainer& errors);
85 void O3PRM_TYPE_INVALID_RANGE(
const O3RealType& val, ErrorsContainer& errors);
87 void O3PRM_CLASS_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
89 void O3PRM_CLASS_AMBIGUOUS(
const O3Label& val,
90 const std::vector< std::string >& matches,
91 ErrorsContainer& errors);
93 void O3PRM_CLASS_DUPLICATE(
const O3Label& val, ErrorsContainer& errors);
95 void O3PRM_CLASS_CYLIC_INHERITANCE(
const O3Label& sub,
97 ErrorsContainer& errors);
99 void O3PRM_CLASS_ATTR_IMPLEMENTATION(
const O3Label& c,
102 ErrorsContainer& errors);
104 void O3PRM_CLASS_AGG_IMPLEMENTATION(
const O3Label& c,
107 ErrorsContainer& errors);
109 void O3PRM_CLASS_REF_IMPLEMENTATION(
const O3Label& c,
112 ErrorsContainer& errors);
114 void O3PRM_CLASS_MISSING_ATTRIBUTES(
const O3Label& c,
116 ErrorsContainer& errors);
118 void O3PRM_CLASS_DUPLICATE_REFERENCE(
const O3Label& ref, ErrorsContainer& errors);
121 O3PRM_CLASS_SELF_REFERENCE(
const O3Label& c,
const O3Label& ref, ErrorsContainer& errors);
123 void O3PRM_CLASS_ILLEGAL_SUB_REFERENCE(
const O3Label& c,
125 ErrorsContainer& errors);
127 void O3PRM_CLASS_PARENT_NOT_FOUND(
const O3Label& parent, ErrorsContainer& errors);
129 void O3PRM_CLASS_ILLEGAL_PARENT(
const O3Label& parent, ErrorsContainer& errors);
131 void O3PRM_CLASS_LINK_NOT_FOUND(
const O3Label& chain,
132 const std::string& s,
133 ErrorsContainer& errors);
135 void O3PRM_CLASS_ILLEGAL_CPT_SIZE(
const std::string& c,
139 ErrorsContainer& errors);
141 void O3PRM_CLASS_ILLEGAL_CPT_VALUE(
const std::string& c,
144 ErrorsContainer& errors);
146 void O3PRM_CLASS_CPT_DOES_NOT_SUM_TO_1(
const std::string& c,
149 ErrorsContainer& errors);
151 void O3PRM_CLASS_CPT_DOES_NOT_SUM_TO_1_WARNING(
const std::string& c,
154 ErrorsContainer& errors);
160 ErrorsContainer& errors);
165 ErrorsContainer& errors);
167 void O3PRM_CLASS_WRONG_PARENT(
const O3Label& prnt, ErrorsContainer& errors);
169 void O3PRM_CLASS_WRONG_PARENT_TYPE(
const O3Label& prnt,
170 const std::string& expected,
171 const std::string& found,
172 ErrorsContainer& errors);
174 void O3PRM_CLASS_ILLEGAL_OVERLOAD(
const O3Label& elt,
176 ErrorsContainer& errors);
178 void O3PRM_CLASS_AGG_PARAMETERS(
const O3Label& agg,
181 ErrorsContainer& errors);
183 void O3PRM_CLASS_AGG_PARAMETER_NOT_FOUND(
const O3Label& agg,
185 ErrorsContainer& errors);
187 void O3PRM_INTERFACE_ILLEGAL_ARRAY(
const O3Label& val, ErrorsContainer& errors);
189 void O3PRM_INTERFACE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
191 void O3PRM_INTERFACE_AMBIGUOUS(
const O3Label& val,
192 const std::vector< std::string >& matches,
193 ErrorsContainer& errors);
195 void O3PRM_INTERFACE_DUPLICATE(
const O3Label& val, ErrorsContainer& errors);
198 ErrorsContainer& errors);
200 void O3PRM_INTERFACE_CYCLIC_INHERITANCE(
const O3Label& sub,
202 ErrorsContainer& errors);
204 void O3PRM_INTERFACE_SELF_REFERENCE(
const O3Interface& i,
206 ErrorsContainer& errors);
208 void O3PRM_INTERFACE_ILLEGAL_SUB_REFERENCE(
const O3Interface& i,
210 ErrorsContainer& errors);
212 void O3PRM_INTERFACE_ILLEGAL_OVERLOAD(
const O3InterfaceElement& elt, ErrorsContainer& errors);
214 void O3PRM_REFERENCE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
216 void O3PRM_REFERENCE_AMBIGUOUS(
const O3Label& val,
217 const std::vector< std::string >& matches,
218 ErrorsContainer& errors);
220 void O3PRM_SYSTEM_INSTANTIATION_FAILED(
const O3System& sys, ErrorsContainer& errors);
222 void O3PRM_SYSTEM_NOT_A_CLASS(
const O3Instance& i, ErrorsContainer& errors);
224 void O3PRM_SYSTEM_DUPLICATE_INSTANCE(
const O3Instance& i, ErrorsContainer& errors);
226 void O3PRM_SYSTEM_NOT_A_PARAMETER(
const O3InstanceParameter& param, ErrorsContainer& errors);
229 ErrorsContainer& errors);
232 ErrorsContainer& errors);
235 ErrorsContainer& errors);
237 void O3PRM_SYSTEM_INVALID_LEFT_VALUE(
const O3Label& val, ErrorsContainer& errors);
239 void O3PRM_SYSTEM_INSTANCE_NOT_FOUND(
const O3Label& i, ErrorsContainer& errors);
241 void O3PRM_SYSTEM_REFERENCE_NOT_FOUND(
const O3Label& ref,
242 const std::string& type,
243 ErrorsContainer& errors);
245 void O3PRM_SYSTEM_NOT_AN_ARRAY(
const O3Label& val, ErrorsContainer& errors);
247 void O3PRM_DEPRECATED_TYPE_WARNING(
const O3Label& type, ErrorsContainer& errors);
Headers for the AST of the O3PRM language.
The O3InstanceParameter is part of the AST of the O3PRM language.
The O3Instance is part of the AST of the O3PRM language.
The O3IntType is part of the AST of the O3PRM language.
The O3InterfaceElement is part of the AST of the O3PRM language.
The O3Interface is part of the AST of the O3PRM language.
The O3Label is part of the AST of the O3PRM language.
The O3RealType is part of the AST of the O3PRM language.
std::pair< O3LabelList, O3FormulaList > O3Rule
The O3System is part of the AST of the O3PRM language.
Errors container (at least) for parser.
std::size_t Size
In aGrUM, hashed values are unsigned long int.
namespace for all probabilistic relational models entities
gum is the global namespace for all aGrUM entities