36 #ifndef GUM_PRM_O3PRM_ERRORS_H 37 # define GUM_PRM_O3PRM_ERRORS_H 39 # ifndef DOXYGEN_SHOULD_SKIP_THIS 46 void O3PRM_TYPE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
48 void O3PRM_TYPE_AMBIGUOUS(
const O3Label& val,
49 const std::vector< std::string >& matches,
50 ErrorsContainer& errors);
52 void O3PRM_TYPE_RESERVED(
const O3Label& val, ErrorsContainer& errors);
54 void O3PRM_TYPE_DUPPLICATE(
const O3Label& val, ErrorsContainer& errors);
56 void O3PRM_TYPE_CYCLIC_INHERITANCE(
const O3Label& sub_type,
57 const O3Label& super_type,
58 ErrorsContainer& errors);
60 void O3PRM_TYPE_UNKNOWN_LABEL(
const O3Label& type,
62 ErrorsContainer& errors);
64 void O3PRM_TYPE_INVALID_RANGE(
const O3IntType& val, ErrorsContainer& errors);
66 void O3PRM_TYPE_INVALID_RANGE(
const O3RealType& val,
67 ErrorsContainer& errors);
69 void O3PRM_CLASS_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
71 void O3PRM_CLASS_AMBIGUOUS(
const O3Label& val,
72 const std::vector< std::string >& matches,
73 ErrorsContainer& errors);
75 void O3PRM_CLASS_DUPLICATE(
const O3Label& val, ErrorsContainer& errors);
77 void O3PRM_CLASS_CYLIC_INHERITANCE(
const O3Label& sub,
79 ErrorsContainer& errors);
81 void O3PRM_CLASS_ATTR_IMPLEMENTATION(
const O3Label& c,
84 ErrorsContainer& errors);
86 void O3PRM_CLASS_AGG_IMPLEMENTATION(
const O3Label& c,
89 ErrorsContainer& errors);
91 void O3PRM_CLASS_REF_IMPLEMENTATION(
const O3Label& c,
94 ErrorsContainer& errors);
96 void O3PRM_CLASS_MISSING_ATTRIBUTES(
const O3Label& c,
98 ErrorsContainer& errors);
100 void O3PRM_CLASS_DUPLICATE_REFERENCE(
const O3Label& ref,
101 ErrorsContainer& errors);
103 void O3PRM_CLASS_SELF_REFERENCE(
const O3Label& c,
105 ErrorsContainer& errors);
107 void O3PRM_CLASS_ILLEGAL_SUB_REFERENCE(
const O3Label& c,
109 ErrorsContainer& errors);
111 void O3PRM_CLASS_PARENT_NOT_FOUND(
const O3Label& parent,
112 ErrorsContainer& errors);
114 void O3PRM_CLASS_ILLEGAL_PARENT(
const O3Label& parent,
115 ErrorsContainer& errors);
117 void O3PRM_CLASS_LINK_NOT_FOUND(
const O3Label& chain,
118 const std::string& s,
119 ErrorsContainer& errors);
121 void O3PRM_CLASS_ILLEGAL_CPT_SIZE(
const std::string& c,
125 ErrorsContainer& errors);
127 void O3PRM_CLASS_ILLEGAL_CPT_VALUE(
const std::string& c,
130 ErrorsContainer& errors);
132 void O3PRM_CLASS_CPT_DOES_NOT_SUM_TO_1(
const std::string& c,
135 ErrorsContainer& errors);
137 void O3PRM_CLASS_CPT_DOES_NOT_SUM_TO_1_WARNING(
const std::string& c,
140 ErrorsContainer& errors);
146 ErrorsContainer& errors);
149 const O3Label& label,
150 const O3Label& parent,
151 ErrorsContainer& errors);
153 void O3PRM_CLASS_WRONG_PARENT(
const O3Label& prnt, ErrorsContainer& errors);
155 void O3PRM_CLASS_WRONG_PARENT_TYPE(
const O3Label& prnt,
156 const std::string& expected,
157 const std::string& found,
158 ErrorsContainer& errors);
160 void O3PRM_CLASS_ILLEGAL_OVERLOAD(
const O3Label& elt,
161 const O3Label& super,
162 ErrorsContainer& errors);
164 void O3PRM_CLASS_AGG_PARAMETERS(
const O3Label& agg,
167 ErrorsContainer& errors);
169 void O3PRM_CLASS_AGG_PARAMETER_NOT_FOUND(
const O3Label& agg,
170 const O3Label& param,
171 ErrorsContainer& errors);
173 void O3PRM_INTERFACE_ILLEGAL_ARRAY(
const O3Label& val,
174 ErrorsContainer& errors);
176 void O3PRM_INTERFACE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
178 void O3PRM_INTERFACE_AMBIGUOUS(
const O3Label& val,
179 const std::vector< std::string >& matches,
180 ErrorsContainer& errors);
182 void O3PRM_INTERFACE_DUPLICATE(
const O3Label& val, ErrorsContainer& errors);
184 void O3PRM_INTERFACE_DUPLICATE_ELEMENT(
const O3InterfaceElement& elt,
185 ErrorsContainer& errors);
187 void O3PRM_INTERFACE_CYCLIC_INHERITANCE(
const O3Label& sub,
188 const O3Label& super,
189 ErrorsContainer& errors);
191 void O3PRM_INTERFACE_SELF_REFERENCE(
const O3Interface& i,
192 const O3InterfaceElement& r,
193 ErrorsContainer& errors);
195 void O3PRM_INTERFACE_ILLEGAL_SUB_REFERENCE(
const O3Interface& i,
196 const O3InterfaceElement& ref,
197 ErrorsContainer& errors);
199 void O3PRM_INTERFACE_ILLEGAL_OVERLOAD(
const O3InterfaceElement& elt,
200 ErrorsContainer& errors);
202 void O3PRM_REFERENCE_NOT_FOUND(
const O3Label& val, ErrorsContainer& errors);
204 void O3PRM_REFERENCE_AMBIGUOUS(
const O3Label& val,
205 const std::vector< std::string >& matches,
206 ErrorsContainer& errors);
208 void O3PRM_SYSTEM_INSTANTIATION_FAILED(
const O3System& sys,
209 ErrorsContainer& errors);
211 void O3PRM_SYSTEM_NOT_A_CLASS(
const O3Instance& i, ErrorsContainer& errors);
213 void O3PRM_SYSTEM_DUPLICATE_INSTANCE(
const O3Instance& i,
214 ErrorsContainer& errors);
216 void O3PRM_SYSTEM_NOT_A_PARAMETER(
const O3InstanceParameter& param,
217 ErrorsContainer& errors);
219 void O3PRM_SYSTEM_PARAMETER_NOT_FOUND(
const O3InstanceParameter& param,
220 ErrorsContainer& errors);
222 void O3PRM_SYSTEM_PARAMETER_NOT_INT(
const O3InstanceParameter& param,
223 ErrorsContainer& errors);
225 void O3PRM_SYSTEM_PARAMETER_NOT_FLOAT(
const O3InstanceParameter& param,
226 ErrorsContainer& errors);
228 void O3PRM_SYSTEM_INVALID_LEFT_VALUE(
const O3Label& val,
229 ErrorsContainer& errors);
231 void O3PRM_SYSTEM_INSTANCE_NOT_FOUND(
const O3Label& i,
232 ErrorsContainer& errors);
234 void O3PRM_SYSTEM_REFERENCE_NOT_FOUND(
const O3Label& ref,
235 const std::string& type,
236 ErrorsContainer& errors);
238 void O3PRM_SYSTEM_NOT_AN_ARRAY(
const O3Label& val, ErrorsContainer& errors);
240 void O3PRM_DEPRECATED_TYPE_WARNING(
const O3Label& type,
241 ErrorsContainer& errors);
247 # endif // DOXYGEN_SHOULD_SKIP_THIS 249 #endif // GUM_PRM_O3PRM_ERRORS_H std::pair< O3LabelList, O3FormulaList > O3Rule
Errors container (at least) for parser.
gum is the global namespace for all aGrUM entities
Headers for the AST of the O3PRM language.
std::size_t Size
In aGrUM, hashed values are unsigned long int.