aboutsummaryrefslogtreecommitdiffstats
path: root/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java')
-rw-r--r--Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java3364
1 files changed, 3364 insertions, 0 deletions
diff --git a/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
new file mode 100644
index 00000000..52dde045
--- /dev/null
+++ b/Application/org.eclipse.viatra.solver.language.model/src-gen/org/eclipse/viatra/solver/language/solverLanguage/impl/SolverLanguagePackageImpl.java
@@ -0,0 +1,3364 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.solverLanguage.impl;
4
5import org.eclipse.emf.ecore.EAttribute;
6import org.eclipse.emf.ecore.EClass;
7import org.eclipse.emf.ecore.EEnum;
8import org.eclipse.emf.ecore.EPackage;
9import org.eclipse.emf.ecore.EReference;
10
11import org.eclipse.emf.ecore.impl.EPackageImpl;
12
13import org.eclipse.viatra.solver.language.solverLanguage.AbstractAssertion;
14import org.eclipse.viatra.solver.language.solverLanguage.AggregateExpression;
15import org.eclipse.viatra.solver.language.solverLanguage.Aggregation;
16import org.eclipse.viatra.solver.language.solverLanguage.AggregationOperator;
17import org.eclipse.viatra.solver.language.solverLanguage.Argument;
18import org.eclipse.viatra.solver.language.solverLanguage.ArgumentList;
19import org.eclipse.viatra.solver.language.solverLanguage.Assertion;
20import org.eclipse.viatra.solver.language.solverLanguage.Attribute;
21import org.eclipse.viatra.solver.language.solverLanguage.AttributeKind;
22import org.eclipse.viatra.solver.language.solverLanguage.BaseRelation;
23import org.eclipse.viatra.solver.language.solverLanguage.BinaryExpression;
24import org.eclipse.viatra.solver.language.solverLanguage.BinaryOperator;
25import org.eclipse.viatra.solver.language.solverLanguage.BoundedMultiplicity;
26import org.eclipse.viatra.solver.language.solverLanguage.BoundedScope;
27import org.eclipse.viatra.solver.language.solverLanguage.Call;
28import org.eclipse.viatra.solver.language.solverLanguage.Case;
29import org.eclipse.viatra.solver.language.solverLanguage.CastExpression;
30import org.eclipse.viatra.solver.language.solverLanguage.ClassDeclaration;
31import org.eclipse.viatra.solver.language.solverLanguage.ConditionalExpression;
32import org.eclipse.viatra.solver.language.solverLanguage.Conjunction;
33import org.eclipse.viatra.solver.language.solverLanguage.Count;
34import org.eclipse.viatra.solver.language.solverLanguage.Datatype;
35import org.eclipse.viatra.solver.language.solverLanguage.DefaultAssertion;
36import org.eclipse.viatra.solver.language.solverLanguage.Disjunction;
37import org.eclipse.viatra.solver.language.solverLanguage.EmptyLiteral;
38import org.eclipse.viatra.solver.language.solverLanguage.EnumDeclaration;
39import org.eclipse.viatra.solver.language.solverLanguage.EnumLiteral;
40import org.eclipse.viatra.solver.language.solverLanguage.ExactMultiplicity;
41import org.eclipse.viatra.solver.language.solverLanguage.ExactScope;
42import org.eclipse.viatra.solver.language.solverLanguage.Expression;
43import org.eclipse.viatra.solver.language.solverLanguage.ExpressionArgument;
44import org.eclipse.viatra.solver.language.solverLanguage.ExternAggregationOperatorDeclaration;
45import org.eclipse.viatra.solver.language.solverLanguage.ExternDatatypeDeclaration;
46import org.eclipse.viatra.solver.language.solverLanguage.ExternDeclaration;
47import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctionDeclaration;
48import org.eclipse.viatra.solver.language.solverLanguage.ExternFunctorDeclaration;
49import org.eclipse.viatra.solver.language.solverLanguage.ExternPredicateDeclaration;
50import org.eclipse.viatra.solver.language.solverLanguage.Field;
51import org.eclipse.viatra.solver.language.solverLanguage.Forall;
52import org.eclipse.viatra.solver.language.solverLanguage.Function;
53import org.eclipse.viatra.solver.language.solverLanguage.FunctionDefinition;
54import org.eclipse.viatra.solver.language.solverLanguage.Functor;
55import org.eclipse.viatra.solver.language.solverLanguage.FunctorDefiniton;
56import org.eclipse.viatra.solver.language.solverLanguage.Import;
57import org.eclipse.viatra.solver.language.solverLanguage.InfinityLiteral;
58import org.eclipse.viatra.solver.language.solverLanguage.InlinePredicateAttrributes;
59import org.eclipse.viatra.solver.language.solverLanguage.IntLiteral;
60import org.eclipse.viatra.solver.language.solverLanguage.Interval;
61import org.eclipse.viatra.solver.language.solverLanguage.LetBinding;
62import org.eclipse.viatra.solver.language.solverLanguage.LetExpression;
63import org.eclipse.viatra.solver.language.solverLanguage.Literal;
64import org.eclipse.viatra.solver.language.solverLanguage.LogicLiteral;
65import org.eclipse.viatra.solver.language.solverLanguage.LogicValue;
66import org.eclipse.viatra.solver.language.solverLanguage.LowerBoundedScope;
67import org.eclipse.viatra.solver.language.solverLanguage.Metric;
68import org.eclipse.viatra.solver.language.solverLanguage.MultiaryExpession;
69import org.eclipse.viatra.solver.language.solverLanguage.Multiplicity;
70import org.eclipse.viatra.solver.language.solverLanguage.NamespaceImport;
71import org.eclipse.viatra.solver.language.solverLanguage.Node;
72import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveDeclaration;
73import org.eclipse.viatra.solver.language.solverLanguage.ObjectiveKind;
74import org.eclipse.viatra.solver.language.solverLanguage.Operator;
75import org.eclipse.viatra.solver.language.solverLanguage.PathComponent;
76import org.eclipse.viatra.solver.language.solverLanguage.Predicate;
77import org.eclipse.viatra.solver.language.solverLanguage.PredicateDefinition;
78import org.eclipse.viatra.solver.language.solverLanguage.Problem;
79import org.eclipse.viatra.solver.language.solverLanguage.RealLiteral;
80import org.eclipse.viatra.solver.language.solverLanguage.Reference;
81import org.eclipse.viatra.solver.language.solverLanguage.Relation;
82import org.eclipse.viatra.solver.language.solverLanguage.ScopeDeclaration;
83import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguageFactory;
84import org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage;
85import org.eclipse.viatra.solver.language.solverLanguage.StarArgument;
86import org.eclipse.viatra.solver.language.solverLanguage.Statement;
87import org.eclipse.viatra.solver.language.solverLanguage.StringLiteral;
88import org.eclipse.viatra.solver.language.solverLanguage.Switch;
89import org.eclipse.viatra.solver.language.solverLanguage.Symbol;
90import org.eclipse.viatra.solver.language.solverLanguage.TypeReference;
91import org.eclipse.viatra.solver.language.solverLanguage.TypedArgument;
92import org.eclipse.viatra.solver.language.solverLanguage.TypedStarArgument;
93import org.eclipse.viatra.solver.language.solverLanguage.TypedVariableArgument;
94import org.eclipse.viatra.solver.language.solverLanguage.UnaryExpression;
95import org.eclipse.viatra.solver.language.solverLanguage.UnaryOperator;
96import org.eclipse.viatra.solver.language.solverLanguage.UnboundedMultiplicity;
97import org.eclipse.viatra.solver.language.solverLanguage.UnnamedErrorPredicateDefintion;
98import org.eclipse.viatra.solver.language.solverLanguage.UriImport;
99import org.eclipse.viatra.solver.language.solverLanguage.Variable;
100
101/**
102 * <!-- begin-user-doc -->
103 * An implementation of the model <b>Package</b>.
104 * <!-- end-user-doc -->
105 * @generated
106 */
107public class SolverLanguagePackageImpl extends EPackageImpl implements SolverLanguagePackage {
108 /**
109 * <!-- begin-user-doc -->
110 * <!-- end-user-doc -->
111 * @generated
112 */
113 private EClass pathComponentEClass = null;
114
115 /**
116 * <!-- begin-user-doc -->
117 * <!-- end-user-doc -->
118 * @generated
119 */
120 private EClass symbolEClass = null;
121
122 /**
123 * <!-- begin-user-doc -->
124 * <!-- end-user-doc -->
125 * @generated
126 */
127 private EClass callEClass = null;
128
129 /**
130 * <!-- begin-user-doc -->
131 * <!-- end-user-doc -->
132 * @generated
133 */
134 private EClass referenceEClass = null;
135
136 /**
137 * <!-- begin-user-doc -->
138 * <!-- end-user-doc -->
139 * @generated
140 */
141 private EClass expressionEClass = null;
142
143 /**
144 * <!-- begin-user-doc -->
145 * <!-- end-user-doc -->
146 * @generated
147 */
148 private EClass argumentEClass = null;
149
150 /**
151 * <!-- begin-user-doc -->
152 * <!-- end-user-doc -->
153 * @generated
154 */
155 private EClass argumentListEClass = null;
156
157 /**
158 * <!-- begin-user-doc -->
159 * <!-- end-user-doc -->
160 * @generated
161 */
162 private EClass expressionArgumentEClass = null;
163
164 /**
165 * <!-- begin-user-doc -->
166 * <!-- end-user-doc -->
167 * @generated
168 */
169 private EClass starArgumentEClass = null;
170
171 /**
172 * <!-- begin-user-doc -->
173 * <!-- end-user-doc -->
174 * @generated
175 */
176 private EClass typedArgumentEClass = null;
177
178 /**
179 * <!-- begin-user-doc -->
180 * <!-- end-user-doc -->
181 * @generated
182 */
183 private EClass multiaryExpessionEClass = null;
184
185 /**
186 * <!-- begin-user-doc -->
187 * <!-- end-user-doc -->
188 * @generated
189 */
190 private EClass variableEClass = null;
191
192 /**
193 * <!-- begin-user-doc -->
194 * <!-- end-user-doc -->
195 * @generated
196 */
197 private EClass unaryExpressionEClass = null;
198
199 /**
200 * <!-- begin-user-doc -->
201 * <!-- end-user-doc -->
202 * @generated
203 */
204 private EClass binaryExpressionEClass = null;
205
206 /**
207 * <!-- begin-user-doc -->
208 * <!-- end-user-doc -->
209 * @generated
210 */
211 private EClass disjunctionEClass = null;
212
213 /**
214 * <!-- begin-user-doc -->
215 * <!-- end-user-doc -->
216 * @generated
217 */
218 private EClass conjunctionEClass = null;
219
220 /**
221 * <!-- begin-user-doc -->
222 * <!-- end-user-doc -->
223 * @generated
224 */
225 private EClass conditionalExpressionEClass = null;
226
227 /**
228 * <!-- begin-user-doc -->
229 * <!-- end-user-doc -->
230 * @generated
231 */
232 private EClass switchEClass = null;
233
234 /**
235 * <!-- begin-user-doc -->
236 * <!-- end-user-doc -->
237 * @generated
238 */
239 private EClass caseEClass = null;
240
241 /**
242 * <!-- begin-user-doc -->
243 * <!-- end-user-doc -->
244 * @generated
245 */
246 private EClass letExpressionEClass = null;
247
248 /**
249 * <!-- begin-user-doc -->
250 * <!-- end-user-doc -->
251 * @generated
252 */
253 private EClass letBindingEClass = null;
254
255 /**
256 * <!-- begin-user-doc -->
257 * <!-- end-user-doc -->
258 * @generated
259 */
260 private EClass literalEClass = null;
261
262 /**
263 * <!-- begin-user-doc -->
264 * <!-- end-user-doc -->
265 * @generated
266 */
267 private EClass intLiteralEClass = null;
268
269 /**
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @generated
273 */
274 private EClass realLiteralEClass = null;
275
276 /**
277 * <!-- begin-user-doc -->
278 * <!-- end-user-doc -->
279 * @generated
280 */
281 private EClass stringLiteralEClass = null;
282
283 /**
284 * <!-- begin-user-doc -->
285 * <!-- end-user-doc -->
286 * @generated
287 */
288 private EClass logicLiteralEClass = null;
289
290 /**
291 * <!-- begin-user-doc -->
292 * <!-- end-user-doc -->
293 * @generated
294 */
295 private EClass emptyLiteralEClass = null;
296
297 /**
298 * <!-- begin-user-doc -->
299 * <!-- end-user-doc -->
300 * @generated
301 */
302 private EClass castExpressionEClass = null;
303
304 /**
305 * <!-- begin-user-doc -->
306 * <!-- end-user-doc -->
307 * @generated
308 */
309 private EClass aggregateExpressionEClass = null;
310
311 /**
312 * <!-- begin-user-doc -->
313 * <!-- end-user-doc -->
314 * @generated
315 */
316 private EClass countEClass = null;
317
318 /**
319 * <!-- begin-user-doc -->
320 * <!-- end-user-doc -->
321 * @generated
322 */
323 private EClass aggregationEClass = null;
324
325 /**
326 * <!-- begin-user-doc -->
327 * <!-- end-user-doc -->
328 * @generated
329 */
330 private EClass forallEClass = null;
331
332 /**
333 * <!-- begin-user-doc -->
334 * <!-- end-user-doc -->
335 * @generated
336 */
337 private EClass typeReferenceEClass = null;
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 private EClass infinityLiteralEClass = null;
345
346 /**
347 * <!-- begin-user-doc -->
348 * <!-- end-user-doc -->
349 * @generated
350 */
351 private EClass intervalEClass = null;
352
353 /**
354 * <!-- begin-user-doc -->
355 * <!-- end-user-doc -->
356 * @generated
357 */
358 private EClass functorEClass = null;
359
360 /**
361 * <!-- begin-user-doc -->
362 * <!-- end-user-doc -->
363 * @generated
364 */
365 private EClass relationEClass = null;
366
367 /**
368 * <!-- begin-user-doc -->
369 * <!-- end-user-doc -->
370 * @generated
371 */
372 private EClass baseRelationEClass = null;
373
374 /**
375 * <!-- begin-user-doc -->
376 * <!-- end-user-doc -->
377 * @generated
378 */
379 private EClass predicateEClass = null;
380
381 /**
382 * <!-- begin-user-doc -->
383 * <!-- end-user-doc -->
384 * @generated
385 */
386 private EClass datatypeEClass = null;
387
388 /**
389 * <!-- begin-user-doc -->
390 * <!-- end-user-doc -->
391 * @generated
392 */
393 private EClass functionEClass = null;
394
395 /**
396 * <!-- begin-user-doc -->
397 * <!-- end-user-doc -->
398 * @generated
399 */
400 private EClass metricEClass = null;
401
402 /**
403 * <!-- begin-user-doc -->
404 * <!-- end-user-doc -->
405 * @generated
406 */
407 private EClass operatorEClass = null;
408
409 /**
410 * <!-- begin-user-doc -->
411 * <!-- end-user-doc -->
412 * @generated
413 */
414 private EClass nodeEClass = null;
415
416 /**
417 * <!-- begin-user-doc -->
418 * <!-- end-user-doc -->
419 * @generated
420 */
421 private EClass statementEClass = null;
422
423 /**
424 * <!-- begin-user-doc -->
425 * <!-- end-user-doc -->
426 * @generated
427 */
428 private EClass abstractAssertionEClass = null;
429
430 /**
431 * <!-- begin-user-doc -->
432 * <!-- end-user-doc -->
433 * @generated
434 */
435 private EClass functorDefinitonEClass = null;
436
437 /**
438 * <!-- begin-user-doc -->
439 * <!-- end-user-doc -->
440 * @generated
441 */
442 private EClass predicateDefinitionEClass = null;
443
444 /**
445 * <!-- begin-user-doc -->
446 * <!-- end-user-doc -->
447 * @generated
448 */
449 private EClass functionDefinitionEClass = null;
450
451 /**
452 * <!-- begin-user-doc -->
453 * <!-- end-user-doc -->
454 * @generated
455 */
456 private EClass attributeEClass = null;
457
458 /**
459 * <!-- begin-user-doc -->
460 * <!-- end-user-doc -->
461 * @generated
462 */
463 private EClass externDeclarationEClass = null;
464
465 /**
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 */
470 private EClass externFunctorDeclarationEClass = null;
471
472 /**
473 * <!-- begin-user-doc -->
474 * <!-- end-user-doc -->
475 * @generated
476 */
477 private EClass externPredicateDeclarationEClass = null;
478
479 /**
480 * <!-- begin-user-doc -->
481 * <!-- end-user-doc -->
482 * @generated
483 */
484 private EClass externFunctionDeclarationEClass = null;
485
486 /**
487 * <!-- begin-user-doc -->
488 * <!-- end-user-doc -->
489 * @generated
490 */
491 private EClass externAggregationOperatorDeclarationEClass = null;
492
493 /**
494 * <!-- begin-user-doc -->
495 * <!-- end-user-doc -->
496 * @generated
497 */
498 private EClass externDatatypeDeclarationEClass = null;
499
500 /**
501 * <!-- begin-user-doc -->
502 * <!-- end-user-doc -->
503 * @generated
504 */
505 private EClass classDeclarationEClass = null;
506
507 /**
508 * <!-- begin-user-doc -->
509 * <!-- end-user-doc -->
510 * @generated
511 */
512 private EClass enumDeclarationEClass = null;
513
514 /**
515 * <!-- begin-user-doc -->
516 * <!-- end-user-doc -->
517 * @generated
518 */
519 private EClass enumLiteralEClass = null;
520
521 /**
522 * <!-- begin-user-doc -->
523 * <!-- end-user-doc -->
524 * @generated
525 */
526 private EClass fieldEClass = null;
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 private EClass multiplicityEClass = null;
534
535 /**
536 * <!-- begin-user-doc -->
537 * <!-- end-user-doc -->
538 * @generated
539 */
540 private EClass defaultAssertionEClass = null;
541
542 /**
543 * <!-- begin-user-doc -->
544 * <!-- end-user-doc -->
545 * @generated
546 */
547 private EClass assertionEClass = null;
548
549 /**
550 * <!-- begin-user-doc -->
551 * <!-- end-user-doc -->
552 * @generated
553 */
554 private EClass unboundedMultiplicityEClass = null;
555
556 /**
557 * <!-- begin-user-doc -->
558 * <!-- end-user-doc -->
559 * @generated
560 */
561 private EClass exactMultiplicityEClass = null;
562
563 /**
564 * <!-- begin-user-doc -->
565 * <!-- end-user-doc -->
566 * @generated
567 */
568 private EClass boundedMultiplicityEClass = null;
569
570 /**
571 * <!-- begin-user-doc -->
572 * <!-- end-user-doc -->
573 * @generated
574 */
575 private EClass inlinePredicateAttrributesEClass = null;
576
577 /**
578 * <!-- begin-user-doc -->
579 * <!-- end-user-doc -->
580 * @generated
581 */
582 private EClass aggregationOperatorEClass = null;
583
584 /**
585 * <!-- begin-user-doc -->
586 * <!-- end-user-doc -->
587 * @generated
588 */
589 private EClass problemEClass = null;
590
591 /**
592 * <!-- begin-user-doc -->
593 * <!-- end-user-doc -->
594 * @generated
595 */
596 private EClass typedStarArgumentEClass = null;
597
598 /**
599 * <!-- begin-user-doc -->
600 * <!-- end-user-doc -->
601 * @generated
602 */
603 private EClass typedVariableArgumentEClass = null;
604
605 /**
606 * <!-- begin-user-doc -->
607 * <!-- end-user-doc -->
608 * @generated
609 */
610 private EClass unnamedErrorPredicateDefintionEClass = null;
611
612 /**
613 * <!-- begin-user-doc -->
614 * <!-- end-user-doc -->
615 * @generated
616 */
617 private EClass objectiveDeclarationEClass = null;
618
619 /**
620 * <!-- begin-user-doc -->
621 * <!-- end-user-doc -->
622 * @generated
623 */
624 private EClass scopeDeclarationEClass = null;
625
626 /**
627 * <!-- begin-user-doc -->
628 * <!-- end-user-doc -->
629 * @generated
630 */
631 private EClass exactScopeEClass = null;
632
633 /**
634 * <!-- begin-user-doc -->
635 * <!-- end-user-doc -->
636 * @generated
637 */
638 private EClass boundedScopeEClass = null;
639
640 /**
641 * <!-- begin-user-doc -->
642 * <!-- end-user-doc -->
643 * @generated
644 */
645 private EClass lowerBoundedScopeEClass = null;
646
647 /**
648 * <!-- begin-user-doc -->
649 * <!-- end-user-doc -->
650 * @generated
651 */
652 private EClass namespaceImportEClass = null;
653
654 /**
655 * <!-- begin-user-doc -->
656 * <!-- end-user-doc -->
657 * @generated
658 */
659 private EClass importEClass = null;
660
661 /**
662 * <!-- begin-user-doc -->
663 * <!-- end-user-doc -->
664 * @generated
665 */
666 private EClass uriImportEClass = null;
667
668 /**
669 * <!-- begin-user-doc -->
670 * <!-- end-user-doc -->
671 * @generated
672 */
673 private EEnum unaryOperatorEEnum = null;
674
675 /**
676 * <!-- begin-user-doc -->
677 * <!-- end-user-doc -->
678 * @generated
679 */
680 private EEnum binaryOperatorEEnum = null;
681
682 /**
683 * <!-- begin-user-doc -->
684 * <!-- end-user-doc -->
685 * @generated
686 */
687 private EEnum logicValueEEnum = null;
688
689 /**
690 * <!-- begin-user-doc -->
691 * <!-- end-user-doc -->
692 * @generated
693 */
694 private EEnum objectiveKindEEnum = null;
695
696 /**
697 * <!-- begin-user-doc -->
698 * <!-- end-user-doc -->
699 * @generated
700 */
701 private EEnum attributeKindEEnum = null;
702
703 /**
704 * Creates an instance of the model <b>Package</b>, registered with
705 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
706 * package URI value.
707 * <p>Note: the correct way to create the package is via the static
708 * factory method {@link #init init()}, which also performs
709 * initialization of the package, or returns the registered package,
710 * if one already exists.
711 * <!-- begin-user-doc -->
712 * <!-- end-user-doc -->
713 * @see org.eclipse.emf.ecore.EPackage.Registry
714 * @see org.eclipse.viatra.solver.language.solverLanguage.SolverLanguagePackage#eNS_URI
715 * @see #init()
716 * @generated
717 */
718 private SolverLanguagePackageImpl() {
719 super(eNS_URI, SolverLanguageFactory.eINSTANCE);
720 }
721
722 /**
723 * <!-- begin-user-doc -->
724 * <!-- end-user-doc -->
725 * @generated
726 */
727 private static boolean isInited = false;
728
729 /**
730 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
731 *
732 * <p>This method is used to initialize {@link SolverLanguagePackage#eINSTANCE} when that field is accessed.
733 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
734 * <!-- begin-user-doc -->
735 * <!-- end-user-doc -->
736 * @see #eNS_URI
737 * @see #createPackageContents()
738 * @see #initializePackageContents()
739 * @generated
740 */
741 public static SolverLanguagePackage init() {
742 if (isInited)
743 return (SolverLanguagePackage) EPackage.Registry.INSTANCE.getEPackage(SolverLanguagePackage.eNS_URI);
744
745 // Obtain or create and register package
746 Object registeredSolverLanguagePackage = EPackage.Registry.INSTANCE.get(eNS_URI);
747 SolverLanguagePackageImpl theSolverLanguagePackage = registeredSolverLanguagePackage instanceof SolverLanguagePackageImpl
748 ? (SolverLanguagePackageImpl) registeredSolverLanguagePackage
749 : new SolverLanguagePackageImpl();
750
751 isInited = true;
752
753 // Create package meta-data objects
754 theSolverLanguagePackage.createPackageContents();
755
756 // Initialize created meta-data
757 theSolverLanguagePackage.initializePackageContents();
758
759 // Mark meta-data to indicate it can't be changed
760 theSolverLanguagePackage.freeze();
761
762 // Update the registry and return the package
763 EPackage.Registry.INSTANCE.put(SolverLanguagePackage.eNS_URI, theSolverLanguagePackage);
764 return theSolverLanguagePackage;
765 }
766
767 /**
768 * <!-- begin-user-doc -->
769 * <!-- end-user-doc -->
770 * @generated
771 */
772 public EClass getPathComponent() {
773 return pathComponentEClass;
774 }
775
776 /**
777 * <!-- begin-user-doc -->
778 * <!-- end-user-doc -->
779 * @generated
780 */
781 public EReference getPathComponent_Symbol() {
782 return (EReference) pathComponentEClass.getEStructuralFeatures().get(0);
783 }
784
785 /**
786 * <!-- begin-user-doc -->
787 * <!-- end-user-doc -->
788 * @generated
789 */
790 public EAttribute getPathComponent_Inverse() {
791 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(1);
792 }
793
794 /**
795 * <!-- begin-user-doc -->
796 * <!-- end-user-doc -->
797 * @generated
798 */
799 public EAttribute getPathComponent_TransitiveClosure() {
800 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(2);
801 }
802
803 /**
804 * <!-- begin-user-doc -->
805 * <!-- end-user-doc -->
806 * @generated
807 */
808 public EAttribute getPathComponent_ReflexiveTransitiveClosure() {
809 return (EAttribute) pathComponentEClass.getEStructuralFeatures().get(3);
810 }
811
812 /**
813 * <!-- begin-user-doc -->
814 * <!-- end-user-doc -->
815 * @generated
816 */
817 public EClass getSymbol() {
818 return symbolEClass;
819 }
820
821 /**
822 * <!-- begin-user-doc -->
823 * <!-- end-user-doc -->
824 * @generated
825 */
826 public EAttribute getSymbol_Name() {
827 return (EAttribute) symbolEClass.getEStructuralFeatures().get(0);
828 }
829
830 /**
831 * <!-- begin-user-doc -->
832 * <!-- end-user-doc -->
833 * @generated
834 */
835 public EClass getCall() {
836 return callEClass;
837 }
838
839 /**
840 * <!-- begin-user-doc -->
841 * <!-- end-user-doc -->
842 * @generated
843 */
844 public EReference getCall_Functor() {
845 return (EReference) callEClass.getEStructuralFeatures().get(0);
846 }
847
848 /**
849 * <!-- begin-user-doc -->
850 * <!-- end-user-doc -->
851 * @generated
852 */
853 public EReference getCall_ArgumentList() {
854 return (EReference) callEClass.getEStructuralFeatures().get(1);
855 }
856
857 /**
858 * <!-- begin-user-doc -->
859 * <!-- end-user-doc -->
860 * @generated
861 */
862 public EClass getReference() {
863 return referenceEClass;
864 }
865
866 /**
867 * <!-- begin-user-doc -->
868 * <!-- end-user-doc -->
869 * @generated
870 */
871 public EReference getReference_Components() {
872 return (EReference) referenceEClass.getEStructuralFeatures().get(0);
873 }
874
875 /**
876 * <!-- begin-user-doc -->
877 * <!-- end-user-doc -->
878 * @generated
879 */
880 public EClass getExpression() {
881 return expressionEClass;
882 }
883
884 /**
885 * <!-- begin-user-doc -->
886 * <!-- end-user-doc -->
887 * @generated
888 */
889 public EReference getExpression_ExistsVariables() {
890 return (EReference) expressionEClass.getEStructuralFeatures().get(0);
891 }
892
893 /**
894 * <!-- begin-user-doc -->
895 * <!-- end-user-doc -->
896 * @generated
897 */
898 public EClass getArgument() {
899 return argumentEClass;
900 }
901
902 /**
903 * <!-- begin-user-doc -->
904 * <!-- end-user-doc -->
905 * @generated
906 */
907 public EClass getArgumentList() {
908 return argumentListEClass;
909 }
910
911 /**
912 * <!-- begin-user-doc -->
913 * <!-- end-user-doc -->
914 * @generated
915 */
916 public EReference getArgumentList_Arguments() {
917 return (EReference) argumentListEClass.getEStructuralFeatures().get(0);
918 }
919
920 /**
921 * <!-- begin-user-doc -->
922 * <!-- end-user-doc -->
923 * @generated
924 */
925 public EClass getExpressionArgument() {
926 return expressionArgumentEClass;
927 }
928
929 /**
930 * <!-- begin-user-doc -->
931 * <!-- end-user-doc -->
932 * @generated
933 */
934 public EReference getExpressionArgument_Expression() {
935 return (EReference) expressionArgumentEClass.getEStructuralFeatures().get(0);
936 }
937
938 /**
939 * <!-- begin-user-doc -->
940 * <!-- end-user-doc -->
941 * @generated
942 */
943 public EClass getStarArgument() {
944 return starArgumentEClass;
945 }
946
947 /**
948 * <!-- begin-user-doc -->
949 * <!-- end-user-doc -->
950 * @generated
951 */
952 public EClass getTypedArgument() {
953 return typedArgumentEClass;
954 }
955
956 /**
957 * <!-- begin-user-doc -->
958 * <!-- end-user-doc -->
959 * @generated
960 */
961 public EReference getTypedArgument_TypeReference() {
962 return (EReference) typedArgumentEClass.getEStructuralFeatures().get(0);
963 }
964
965 /**
966 * <!-- begin-user-doc -->
967 * <!-- end-user-doc -->
968 * @generated
969 */
970 public EClass getMultiaryExpession() {
971 return multiaryExpessionEClass;
972 }
973
974 /**
975 * <!-- begin-user-doc -->
976 * <!-- end-user-doc -->
977 * @generated
978 */
979 public EReference getMultiaryExpession_Children() {
980 return (EReference) multiaryExpessionEClass.getEStructuralFeatures().get(0);
981 }
982
983 /**
984 * <!-- begin-user-doc -->
985 * <!-- end-user-doc -->
986 * @generated
987 */
988 public EClass getVariable() {
989 return variableEClass;
990 }
991
992 /**
993 * <!-- begin-user-doc -->
994 * <!-- end-user-doc -->
995 * @generated
996 */
997 public EReference getVariable_TypeReference() {
998 return (EReference) variableEClass.getEStructuralFeatures().get(0);
999 }
1000
1001 /**
1002 * <!-- begin-user-doc -->
1003 * <!-- end-user-doc -->
1004 * @generated
1005 */
1006 public EClass getUnaryExpression() {
1007 return unaryExpressionEClass;
1008 }
1009
1010 /**
1011 * <!-- begin-user-doc -->
1012 * <!-- end-user-doc -->
1013 * @generated
1014 */
1015 public EReference getUnaryExpression_Body() {
1016 return (EReference) unaryExpressionEClass.getEStructuralFeatures().get(0);
1017 }
1018
1019 /**
1020 * <!-- begin-user-doc -->
1021 * <!-- end-user-doc -->
1022 * @generated
1023 */
1024 public EAttribute getUnaryExpression_Op() {
1025 return (EAttribute) unaryExpressionEClass.getEStructuralFeatures().get(1);
1026 }
1027
1028 /**
1029 * <!-- begin-user-doc -->
1030 * <!-- end-user-doc -->
1031 * @generated
1032 */
1033 public EClass getBinaryExpression() {
1034 return binaryExpressionEClass;
1035 }
1036
1037 /**
1038 * <!-- begin-user-doc -->
1039 * <!-- end-user-doc -->
1040 * @generated
1041 */
1042 public EAttribute getBinaryExpression_Op() {
1043 return (EAttribute) binaryExpressionEClass.getEStructuralFeatures().get(0);
1044 }
1045
1046 /**
1047 * <!-- begin-user-doc -->
1048 * <!-- end-user-doc -->
1049 * @generated
1050 */
1051 public EReference getBinaryExpression_Left() {
1052 return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(1);
1053 }
1054
1055 /**
1056 * <!-- begin-user-doc -->
1057 * <!-- end-user-doc -->
1058 * @generated
1059 */
1060 public EReference getBinaryExpression_Right() {
1061 return (EReference) binaryExpressionEClass.getEStructuralFeatures().get(2);
1062 }
1063
1064 /**
1065 * <!-- begin-user-doc -->
1066 * <!-- end-user-doc -->
1067 * @generated
1068 */
1069 public EClass getDisjunction() {
1070 return disjunctionEClass;
1071 }
1072
1073 /**
1074 * <!-- begin-user-doc -->
1075 * <!-- end-user-doc -->
1076 * @generated
1077 */
1078 public EClass getConjunction() {
1079 return conjunctionEClass;
1080 }
1081
1082 /**
1083 * <!-- begin-user-doc -->
1084 * <!-- end-user-doc -->
1085 * @generated
1086 */
1087 public EClass getConditionalExpression() {
1088 return conditionalExpressionEClass;
1089 }
1090
1091 /**
1092 * <!-- begin-user-doc -->
1093 * <!-- end-user-doc -->
1094 * @generated
1095 */
1096 public EReference getConditionalExpression_Condition() {
1097 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(0);
1098 }
1099
1100 /**
1101 * <!-- begin-user-doc -->
1102 * <!-- end-user-doc -->
1103 * @generated
1104 */
1105 public EReference getConditionalExpression_Then() {
1106 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(1);
1107 }
1108
1109 /**
1110 * <!-- begin-user-doc -->
1111 * <!-- end-user-doc -->
1112 * @generated
1113 */
1114 public EReference getConditionalExpression_Else() {
1115 return (EReference) conditionalExpressionEClass.getEStructuralFeatures().get(2);
1116 }
1117
1118 /**
1119 * <!-- begin-user-doc -->
1120 * <!-- end-user-doc -->
1121 * @generated
1122 */
1123 public EClass getSwitch() {
1124 return switchEClass;
1125 }
1126
1127 /**
1128 * <!-- begin-user-doc -->
1129 * <!-- end-user-doc -->
1130 * @generated
1131 */
1132 public EReference getSwitch_Cases() {
1133 return (EReference) switchEClass.getEStructuralFeatures().get(0);
1134 }
1135
1136 /**
1137 * <!-- begin-user-doc -->
1138 * <!-- end-user-doc -->
1139 * @generated
1140 */
1141 public EClass getCase() {
1142 return caseEClass;
1143 }
1144
1145 /**
1146 * <!-- begin-user-doc -->
1147 * <!-- end-user-doc -->
1148 * @generated
1149 */
1150 public EReference getCase_Condition() {
1151 return (EReference) caseEClass.getEStructuralFeatures().get(0);
1152 }
1153
1154 /**
1155 * <!-- begin-user-doc -->
1156 * <!-- end-user-doc -->
1157 * @generated
1158 */
1159 public EReference getCase_Body() {
1160 return (EReference) caseEClass.getEStructuralFeatures().get(1);
1161 }
1162
1163 /**
1164 * <!-- begin-user-doc -->
1165 * <!-- end-user-doc -->
1166 * @generated
1167 */
1168 public EClass getLetExpression() {
1169 return letExpressionEClass;
1170 }
1171
1172 /**
1173 * <!-- begin-user-doc -->
1174 * <!-- end-user-doc -->
1175 * @generated
1176 */
1177 public EReference getLetExpression_Bindings() {
1178 return (EReference) letExpressionEClass.getEStructuralFeatures().get(0);
1179 }
1180
1181 /**
1182 * <!-- begin-user-doc -->
1183 * <!-- end-user-doc -->
1184 * @generated
1185 */
1186 public EReference getLetExpression_Body() {
1187 return (EReference) letExpressionEClass.getEStructuralFeatures().get(1);
1188 }
1189
1190 /**
1191 * <!-- begin-user-doc -->
1192 * <!-- end-user-doc -->
1193 * @generated
1194 */
1195 public EClass getLetBinding() {
1196 return letBindingEClass;
1197 }
1198
1199 /**
1200 * <!-- begin-user-doc -->
1201 * <!-- end-user-doc -->
1202 * @generated
1203 */
1204 public EReference getLetBinding_Value() {
1205 return (EReference) letBindingEClass.getEStructuralFeatures().get(0);
1206 }
1207
1208 /**
1209 * <!-- begin-user-doc -->
1210 * <!-- end-user-doc -->
1211 * @generated
1212 */
1213 public EReference getLetBinding_Variable() {
1214 return (EReference) letBindingEClass.getEStructuralFeatures().get(1);
1215 }
1216
1217 /**
1218 * <!-- begin-user-doc -->
1219 * <!-- end-user-doc -->
1220 * @generated
1221 */
1222 public EAttribute getLetBinding_Name() {
1223 return (EAttribute) letBindingEClass.getEStructuralFeatures().get(2);
1224 }
1225
1226 /**
1227 * <!-- begin-user-doc -->
1228 * <!-- end-user-doc -->
1229 * @generated
1230 */
1231 public EReference getLetBinding_Type() {
1232 return (EReference) letBindingEClass.getEStructuralFeatures().get(3);
1233 }
1234
1235 /**
1236 * <!-- begin-user-doc -->
1237 * <!-- end-user-doc -->
1238 * @generated
1239 */
1240 public EClass getLiteral() {
1241 return literalEClass;
1242 }
1243
1244 /**
1245 * <!-- begin-user-doc -->
1246 * <!-- end-user-doc -->
1247 * @generated
1248 */
1249 public EClass getIntLiteral() {
1250 return intLiteralEClass;
1251 }
1252
1253 /**
1254 * <!-- begin-user-doc -->
1255 * <!-- end-user-doc -->
1256 * @generated
1257 */
1258 public EAttribute getIntLiteral_Value() {
1259 return (EAttribute) intLiteralEClass.getEStructuralFeatures().get(0);
1260 }
1261
1262 /**
1263 * <!-- begin-user-doc -->
1264 * <!-- end-user-doc -->
1265 * @generated
1266 */
1267 public EClass getRealLiteral() {
1268 return realLiteralEClass;
1269 }
1270
1271 /**
1272 * <!-- begin-user-doc -->
1273 * <!-- end-user-doc -->
1274 * @generated
1275 */
1276 public EAttribute getRealLiteral_Value() {
1277 return (EAttribute) realLiteralEClass.getEStructuralFeatures().get(0);
1278 }
1279
1280 /**
1281 * <!-- begin-user-doc -->
1282 * <!-- end-user-doc -->
1283 * @generated
1284 */
1285 public EClass getStringLiteral() {
1286 return stringLiteralEClass;
1287 }
1288
1289 /**
1290 * <!-- begin-user-doc -->
1291 * <!-- end-user-doc -->
1292 * @generated
1293 */
1294 public EAttribute getStringLiteral_Value() {
1295 return (EAttribute) stringLiteralEClass.getEStructuralFeatures().get(0);
1296 }
1297
1298 /**
1299 * <!-- begin-user-doc -->
1300 * <!-- end-user-doc -->
1301 * @generated
1302 */
1303 public EClass getLogicLiteral() {
1304 return logicLiteralEClass;
1305 }
1306
1307 /**
1308 * <!-- begin-user-doc -->
1309 * <!-- end-user-doc -->
1310 * @generated
1311 */
1312 public EAttribute getLogicLiteral_Value() {
1313 return (EAttribute) logicLiteralEClass.getEStructuralFeatures().get(0);
1314 }
1315
1316 /**
1317 * <!-- begin-user-doc -->
1318 * <!-- end-user-doc -->
1319 * @generated
1320 */
1321 public EClass getEmptyLiteral() {
1322 return emptyLiteralEClass;
1323 }
1324
1325 /**
1326 * <!-- begin-user-doc -->
1327 * <!-- end-user-doc -->
1328 * @generated
1329 */
1330 public EClass getCastExpression() {
1331 return castExpressionEClass;
1332 }
1333
1334 /**
1335 * <!-- begin-user-doc -->
1336 * <!-- end-user-doc -->
1337 * @generated
1338 */
1339 public EReference getCastExpression_Body() {
1340 return (EReference) castExpressionEClass.getEStructuralFeatures().get(0);
1341 }
1342
1343 /**
1344 * <!-- begin-user-doc -->
1345 * <!-- end-user-doc -->
1346 * @generated
1347 */
1348 public EReference getCastExpression_TargetType() {
1349 return (EReference) castExpressionEClass.getEStructuralFeatures().get(1);
1350 }
1351
1352 /**
1353 * <!-- begin-user-doc -->
1354 * <!-- end-user-doc -->
1355 * @generated
1356 */
1357 public EClass getAggregateExpression() {
1358 return aggregateExpressionEClass;
1359 }
1360
1361 /**
1362 * <!-- begin-user-doc -->
1363 * <!-- end-user-doc -->
1364 * @generated
1365 */
1366 public EReference getAggregateExpression_ForallVariables() {
1367 return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(0);
1368 }
1369
1370 /**
1371 * <!-- begin-user-doc -->
1372 * <!-- end-user-doc -->
1373 * @generated
1374 */
1375 public EReference getAggregateExpression_Condition() {
1376 return (EReference) aggregateExpressionEClass.getEStructuralFeatures().get(1);
1377 }
1378
1379 /**
1380 * <!-- begin-user-doc -->
1381 * <!-- end-user-doc -->
1382 * @generated
1383 */
1384 public EClass getCount() {
1385 return countEClass;
1386 }
1387
1388 /**
1389 * <!-- begin-user-doc -->
1390 * <!-- end-user-doc -->
1391 * @generated
1392 */
1393 public EClass getAggregation() {
1394 return aggregationEClass;
1395 }
1396
1397 /**
1398 * <!-- begin-user-doc -->
1399 * <!-- end-user-doc -->
1400 * @generated
1401 */
1402 public EReference getAggregation_Value() {
1403 return (EReference) aggregationEClass.getEStructuralFeatures().get(0);
1404 }
1405
1406 /**
1407 * <!-- begin-user-doc -->
1408 * <!-- end-user-doc -->
1409 * @generated
1410 */
1411 public EReference getAggregation_Op() {
1412 return (EReference) aggregationEClass.getEStructuralFeatures().get(1);
1413 }
1414
1415 /**
1416 * <!-- begin-user-doc -->
1417 * <!-- end-user-doc -->
1418 * @generated
1419 */
1420 public EClass getForall() {
1421 return forallEClass;
1422 }
1423
1424 /**
1425 * <!-- begin-user-doc -->
1426 * <!-- end-user-doc -->
1427 * @generated
1428 */
1429 public EReference getForall_Body() {
1430 return (EReference) forallEClass.getEStructuralFeatures().get(0);
1431 }
1432
1433 /**
1434 * <!-- begin-user-doc -->
1435 * <!-- end-user-doc -->
1436 * @generated
1437 */
1438 public EClass getTypeReference() {
1439 return typeReferenceEClass;
1440 }
1441
1442 /**
1443 * <!-- begin-user-doc -->
1444 * <!-- end-user-doc -->
1445 * @generated
1446 */
1447 public EAttribute getTypeReference_ForceObjectType() {
1448 return (EAttribute) typeReferenceEClass.getEStructuralFeatures().get(0);
1449 }
1450
1451 /**
1452 * <!-- begin-user-doc -->
1453 * <!-- end-user-doc -->
1454 * @generated
1455 */
1456 public EReference getTypeReference_Type() {
1457 return (EReference) typeReferenceEClass.getEStructuralFeatures().get(1);
1458 }
1459
1460 /**
1461 * <!-- begin-user-doc -->
1462 * <!-- end-user-doc -->
1463 * @generated
1464 */
1465 public EClass getInfinityLiteral() {
1466 return infinityLiteralEClass;
1467 }
1468
1469 /**
1470 * <!-- begin-user-doc -->
1471 * <!-- end-user-doc -->
1472 * @generated
1473 */
1474 public EClass getInterval() {
1475 return intervalEClass;
1476 }
1477
1478 /**
1479 * <!-- begin-user-doc -->
1480 * <!-- end-user-doc -->
1481 * @generated
1482 */
1483 public EReference getInterval_LowerBound() {
1484 return (EReference) intervalEClass.getEStructuralFeatures().get(0);
1485 }
1486
1487 /**
1488 * <!-- begin-user-doc -->
1489 * <!-- end-user-doc -->
1490 * @generated
1491 */
1492 public EReference getInterval_UpperBound() {
1493 return (EReference) intervalEClass.getEStructuralFeatures().get(1);
1494 }
1495
1496 /**
1497 * <!-- begin-user-doc -->
1498 * <!-- end-user-doc -->
1499 * @generated
1500 */
1501 public EClass getFunctor() {
1502 return functorEClass;
1503 }
1504
1505 /**
1506 * <!-- begin-user-doc -->
1507 * <!-- end-user-doc -->
1508 * @generated
1509 */
1510 public EReference getFunctor_Parameters() {
1511 return (EReference) functorEClass.getEStructuralFeatures().get(0);
1512 }
1513
1514 /**
1515 * <!-- begin-user-doc -->
1516 * <!-- end-user-doc -->
1517 * @generated
1518 */
1519 public EClass getRelation() {
1520 return relationEClass;
1521 }
1522
1523 /**
1524 * <!-- begin-user-doc -->
1525 * <!-- end-user-doc -->
1526 * @generated
1527 */
1528 public EClass getBaseRelation() {
1529 return baseRelationEClass;
1530 }
1531
1532 /**
1533 * <!-- begin-user-doc -->
1534 * <!-- end-user-doc -->
1535 * @generated
1536 */
1537 public EClass getPredicate() {
1538 return predicateEClass;
1539 }
1540
1541 /**
1542 * <!-- begin-user-doc -->
1543 * <!-- end-user-doc -->
1544 * @generated
1545 */
1546 public EClass getDatatype() {
1547 return datatypeEClass;
1548 }
1549
1550 /**
1551 * <!-- begin-user-doc -->
1552 * <!-- end-user-doc -->
1553 * @generated
1554 */
1555 public EClass getFunction() {
1556 return functionEClass;
1557 }
1558
1559 /**
1560 * <!-- begin-user-doc -->
1561 * <!-- end-user-doc -->
1562 * @generated
1563 */
1564 public EReference getFunction_ResultType() {
1565 return (EReference) functionEClass.getEStructuralFeatures().get(0);
1566 }
1567
1568 /**
1569 * <!-- begin-user-doc -->
1570 * <!-- end-user-doc -->
1571 * @generated
1572 */
1573 public EClass getMetric() {
1574 return metricEClass;
1575 }
1576
1577 /**
1578 * <!-- begin-user-doc -->
1579 * <!-- end-user-doc -->
1580 * @generated
1581 */
1582 public EClass getOperator() {
1583 return operatorEClass;
1584 }
1585
1586 /**
1587 * <!-- begin-user-doc -->
1588 * <!-- end-user-doc -->
1589 * @generated
1590 */
1591 public EClass getNode() {
1592 return nodeEClass;
1593 }
1594
1595 /**
1596 * <!-- begin-user-doc -->
1597 * <!-- end-user-doc -->
1598 * @generated
1599 */
1600 public EAttribute getNode_Named() {
1601 return (EAttribute) nodeEClass.getEStructuralFeatures().get(0);
1602 }
1603
1604 /**
1605 * <!-- begin-user-doc -->
1606 * <!-- end-user-doc -->
1607 * @generated
1608 */
1609 public EClass getStatement() {
1610 return statementEClass;
1611 }
1612
1613 /**
1614 * <!-- begin-user-doc -->
1615 * <!-- end-user-doc -->
1616 * @generated
1617 */
1618 public EClass getAbstractAssertion() {
1619 return abstractAssertionEClass;
1620 }
1621
1622 /**
1623 * <!-- begin-user-doc -->
1624 * <!-- end-user-doc -->
1625 * @generated
1626 */
1627 public EReference getAbstractAssertion_Expression() {
1628 return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(0);
1629 }
1630
1631 /**
1632 * <!-- begin-user-doc -->
1633 * <!-- end-user-doc -->
1634 * @generated
1635 */
1636 public EReference getAbstractAssertion_Range() {
1637 return (EReference) abstractAssertionEClass.getEStructuralFeatures().get(1);
1638 }
1639
1640 /**
1641 * <!-- begin-user-doc -->
1642 * <!-- end-user-doc -->
1643 * @generated
1644 */
1645 public EClass getFunctorDefiniton() {
1646 return functorDefinitonEClass;
1647 }
1648
1649 /**
1650 * <!-- begin-user-doc -->
1651 * <!-- end-user-doc -->
1652 * @generated
1653 */
1654 public EReference getFunctorDefiniton_Head() {
1655 return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(0);
1656 }
1657
1658 /**
1659 * <!-- begin-user-doc -->
1660 * <!-- end-user-doc -->
1661 * @generated
1662 */
1663 public EReference getFunctorDefiniton_Body() {
1664 return (EReference) functorDefinitonEClass.getEStructuralFeatures().get(1);
1665 }
1666
1667 /**
1668 * <!-- begin-user-doc -->
1669 * <!-- end-user-doc -->
1670 * @generated
1671 */
1672 public EClass getPredicateDefinition() {
1673 return predicateDefinitionEClass;
1674 }
1675
1676 /**
1677 * <!-- begin-user-doc -->
1678 * <!-- end-user-doc -->
1679 * @generated
1680 */
1681 public EClass getFunctionDefinition() {
1682 return functionDefinitionEClass;
1683 }
1684
1685 /**
1686 * <!-- begin-user-doc -->
1687 * <!-- end-user-doc -->
1688 * @generated
1689 */
1690 public EReference getFunctionDefinition_ResultType() {
1691 return (EReference) functionDefinitionEClass.getEStructuralFeatures().get(0);
1692 }
1693
1694 /**
1695 * <!-- begin-user-doc -->
1696 * <!-- end-user-doc -->
1697 * @generated
1698 */
1699 public EClass getAttribute() {
1700 return attributeEClass;
1701 }
1702
1703 /**
1704 * <!-- begin-user-doc -->
1705 * <!-- end-user-doc -->
1706 * @generated
1707 */
1708 public EReference getAttribute_Target() {
1709 return (EReference) attributeEClass.getEStructuralFeatures().get(0);
1710 }
1711
1712 /**
1713 * <!-- begin-user-doc -->
1714 * <!-- end-user-doc -->
1715 * @generated
1716 */
1717 public EAttribute getAttribute_Kind() {
1718 return (EAttribute) attributeEClass.getEStructuralFeatures().get(1);
1719 }
1720
1721 /**
1722 * <!-- begin-user-doc -->
1723 * <!-- end-user-doc -->
1724 * @generated
1725 */
1726 public EClass getExternDeclaration() {
1727 return externDeclarationEClass;
1728 }
1729
1730 /**
1731 * <!-- begin-user-doc -->
1732 * <!-- end-user-doc -->
1733 * @generated
1734 */
1735 public EAttribute getExternDeclaration_Name() {
1736 return (EAttribute) externDeclarationEClass.getEStructuralFeatures().get(0);
1737 }
1738
1739 /**
1740 * <!-- begin-user-doc -->
1741 * <!-- end-user-doc -->
1742 * @generated
1743 */
1744 public EClass getExternFunctorDeclaration() {
1745 return externFunctorDeclarationEClass;
1746 }
1747
1748 /**
1749 * <!-- begin-user-doc -->
1750 * <!-- end-user-doc -->
1751 * @generated
1752 */
1753 public EReference getExternFunctorDeclaration_ArgumentList() {
1754 return (EReference) externFunctorDeclarationEClass.getEStructuralFeatures().get(0);
1755 }
1756
1757 /**
1758 * <!-- begin-user-doc -->
1759 * <!-- end-user-doc -->
1760 * @generated
1761 */
1762 public EClass getExternPredicateDeclaration() {
1763 return externPredicateDeclarationEClass;
1764 }
1765
1766 /**
1767 * <!-- begin-user-doc -->
1768 * <!-- end-user-doc -->
1769 * @generated
1770 */
1771 public EClass getExternFunctionDeclaration() {
1772 return externFunctionDeclarationEClass;
1773 }
1774
1775 /**
1776 * <!-- begin-user-doc -->
1777 * <!-- end-user-doc -->
1778 * @generated
1779 */
1780 public EReference getExternFunctionDeclaration_ResultType() {
1781 return (EReference) externFunctionDeclarationEClass.getEStructuralFeatures().get(0);
1782 }
1783
1784 /**
1785 * <!-- begin-user-doc -->
1786 * <!-- end-user-doc -->
1787 * @generated
1788 */
1789 public EClass getExternAggregationOperatorDeclaration() {
1790 return externAggregationOperatorDeclarationEClass;
1791 }
1792
1793 /**
1794 * <!-- begin-user-doc -->
1795 * <!-- end-user-doc -->
1796 * @generated
1797 */
1798 public EReference getExternAggregationOperatorDeclaration_ArgumentType() {
1799 return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(0);
1800 }
1801
1802 /**
1803 * <!-- begin-user-doc -->
1804 * <!-- end-user-doc -->
1805 * @generated
1806 */
1807 public EReference getExternAggregationOperatorDeclaration_ResultType() {
1808 return (EReference) externAggregationOperatorDeclarationEClass.getEStructuralFeatures().get(1);
1809 }
1810
1811 /**
1812 * <!-- begin-user-doc -->
1813 * <!-- end-user-doc -->
1814 * @generated
1815 */
1816 public EClass getExternDatatypeDeclaration() {
1817 return externDatatypeDeclarationEClass;
1818 }
1819
1820 /**
1821 * <!-- begin-user-doc -->
1822 * <!-- end-user-doc -->
1823 * @generated
1824 */
1825 public EClass getClassDeclaration() {
1826 return classDeclarationEClass;
1827 }
1828
1829 /**
1830 * <!-- begin-user-doc -->
1831 * <!-- end-user-doc -->
1832 * @generated
1833 */
1834 public EReference getClassDeclaration_Fields() {
1835 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(0);
1836 }
1837
1838 /**
1839 * <!-- begin-user-doc -->
1840 * <!-- end-user-doc -->
1841 * @generated
1842 */
1843 public EAttribute getClassDeclaration_Name() {
1844 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(1);
1845 }
1846
1847 /**
1848 * <!-- begin-user-doc -->
1849 * <!-- end-user-doc -->
1850 * @generated
1851 */
1852 public EAttribute getClassDeclaration_Abstract() {
1853 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(2);
1854 }
1855
1856 /**
1857 * <!-- begin-user-doc -->
1858 * <!-- end-user-doc -->
1859 * @generated
1860 */
1861 public EReference getClassDeclaration_Supertypes() {
1862 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3);
1863 }
1864
1865 /**
1866 * <!-- begin-user-doc -->
1867 * <!-- end-user-doc -->
1868 * @generated
1869 */
1870 public EAttribute getClassDeclaration_Root() {
1871 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(4);
1872 }
1873
1874 /**
1875 * <!-- begin-user-doc -->
1876 * <!-- end-user-doc -->
1877 * @generated
1878 */
1879 public EClass getEnumDeclaration() {
1880 return enumDeclarationEClass;
1881 }
1882
1883 /**
1884 * <!-- begin-user-doc -->
1885 * <!-- end-user-doc -->
1886 * @generated
1887 */
1888 public EReference getEnumDeclaration_Literals() {
1889 return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0);
1890 }
1891
1892 /**
1893 * <!-- begin-user-doc -->
1894 * <!-- end-user-doc -->
1895 * @generated
1896 */
1897 public EAttribute getEnumDeclaration_Name() {
1898 return (EAttribute) enumDeclarationEClass.getEStructuralFeatures().get(1);
1899 }
1900
1901 /**
1902 * <!-- begin-user-doc -->
1903 * <!-- end-user-doc -->
1904 * @generated
1905 */
1906 public EClass getEnumLiteral() {
1907 return enumLiteralEClass;
1908 }
1909
1910 /**
1911 * <!-- begin-user-doc -->
1912 * <!-- end-user-doc -->
1913 * @generated
1914 */
1915 public EAttribute getEnumLiteral_Name() {
1916 return (EAttribute) enumLiteralEClass.getEStructuralFeatures().get(0);
1917 }
1918
1919 /**
1920 * <!-- begin-user-doc -->
1921 * <!-- end-user-doc -->
1922 * @generated
1923 */
1924 public EClass getField() {
1925 return fieldEClass;
1926 }
1927
1928 /**
1929 * <!-- begin-user-doc -->
1930 * <!-- end-user-doc -->
1931 * @generated
1932 */
1933 public EAttribute getField_Containment() {
1934 return (EAttribute) fieldEClass.getEStructuralFeatures().get(0);
1935 }
1936
1937 /**
1938 * <!-- begin-user-doc -->
1939 * <!-- end-user-doc -->
1940 * @generated
1941 */
1942 public EAttribute getField_CrossReference() {
1943 return (EAttribute) fieldEClass.getEStructuralFeatures().get(1);
1944 }
1945
1946 /**
1947 * <!-- begin-user-doc -->
1948 * <!-- end-user-doc -->
1949 * @generated
1950 */
1951 public EReference getField_Opposite() {
1952 return (EReference) fieldEClass.getEStructuralFeatures().get(2);
1953 }
1954
1955 /**
1956 * <!-- begin-user-doc -->
1957 * <!-- end-user-doc -->
1958 * @generated
1959 */
1960 public EReference getField_Multiplicity() {
1961 return (EReference) fieldEClass.getEStructuralFeatures().get(3);
1962 }
1963
1964 /**
1965 * <!-- begin-user-doc -->
1966 * <!-- end-user-doc -->
1967 * @generated
1968 */
1969 public EReference getField_Type() {
1970 return (EReference) fieldEClass.getEStructuralFeatures().get(4);
1971 }
1972
1973 /**
1974 * <!-- begin-user-doc -->
1975 * <!-- end-user-doc -->
1976 * @generated
1977 */
1978 public EAttribute getField_Name() {
1979 return (EAttribute) fieldEClass.getEStructuralFeatures().get(5);
1980 }
1981
1982 /**
1983 * <!-- begin-user-doc -->
1984 * <!-- end-user-doc -->
1985 * @generated
1986 */
1987 public EClass getMultiplicity() {
1988 return multiplicityEClass;
1989 }
1990
1991 /**
1992 * <!-- begin-user-doc -->
1993 * <!-- end-user-doc -->
1994 * @generated
1995 */
1996 public EClass getDefaultAssertion() {
1997 return defaultAssertionEClass;
1998 }
1999
2000 /**
2001 * <!-- begin-user-doc -->
2002 * <!-- end-user-doc -->
2003 * @generated
2004 */
2005 public EClass getAssertion() {
2006 return assertionEClass;
2007 }
2008
2009 /**
2010 * <!-- begin-user-doc -->
2011 * <!-- end-user-doc -->
2012 * @generated
2013 */
2014 public EClass getUnboundedMultiplicity() {
2015 return unboundedMultiplicityEClass;
2016 }
2017
2018 /**
2019 * <!-- begin-user-doc -->
2020 * <!-- end-user-doc -->
2021 * @generated
2022 */
2023 public EClass getExactMultiplicity() {
2024 return exactMultiplicityEClass;
2025 }
2026
2027 /**
2028 * <!-- begin-user-doc -->
2029 * <!-- end-user-doc -->
2030 * @generated
2031 */
2032 public EAttribute getExactMultiplicity_Value() {
2033 return (EAttribute) exactMultiplicityEClass.getEStructuralFeatures().get(0);
2034 }
2035
2036 /**
2037 * <!-- begin-user-doc -->
2038 * <!-- end-user-doc -->
2039 * @generated
2040 */
2041 public EClass getBoundedMultiplicity() {
2042 return boundedMultiplicityEClass;
2043 }
2044
2045 /**
2046 * <!-- begin-user-doc -->
2047 * <!-- end-user-doc -->
2048 * @generated
2049 */
2050 public EAttribute getBoundedMultiplicity_LowerBound() {
2051 return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(0);
2052 }
2053
2054 /**
2055 * <!-- begin-user-doc -->
2056 * <!-- end-user-doc -->
2057 * @generated
2058 */
2059 public EAttribute getBoundedMultiplicity_UpperBound() {
2060 return (EAttribute) boundedMultiplicityEClass.getEStructuralFeatures().get(1);
2061 }
2062
2063 /**
2064 * <!-- begin-user-doc -->
2065 * <!-- end-user-doc -->
2066 * @generated
2067 */
2068 public EClass getInlinePredicateAttrributes() {
2069 return inlinePredicateAttrributesEClass;
2070 }
2071
2072 /**
2073 * <!-- begin-user-doc -->
2074 * <!-- end-user-doc -->
2075 * @generated
2076 */
2077 public EAttribute getInlinePredicateAttrributes_Error() {
2078 return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(0);
2079 }
2080
2081 /**
2082 * <!-- begin-user-doc -->
2083 * <!-- end-user-doc -->
2084 * @generated
2085 */
2086 public EAttribute getInlinePredicateAttrributes_Functional() {
2087 return (EAttribute) inlinePredicateAttrributesEClass.getEStructuralFeatures().get(1);
2088 }
2089
2090 /**
2091 * <!-- begin-user-doc -->
2092 * <!-- end-user-doc -->
2093 * @generated
2094 */
2095 public EClass getAggregationOperator() {
2096 return aggregationOperatorEClass;
2097 }
2098
2099 /**
2100 * <!-- begin-user-doc -->
2101 * <!-- end-user-doc -->
2102 * @generated
2103 */
2104 public EReference getAggregationOperator_ArgumentType() {
2105 return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(0);
2106 }
2107
2108 /**
2109 * <!-- begin-user-doc -->
2110 * <!-- end-user-doc -->
2111 * @generated
2112 */
2113 public EReference getAggregationOperator_ResultType() {
2114 return (EReference) aggregationOperatorEClass.getEStructuralFeatures().get(1);
2115 }
2116
2117 /**
2118 * <!-- begin-user-doc -->
2119 * <!-- end-user-doc -->
2120 * @generated
2121 */
2122 public EClass getProblem() {
2123 return problemEClass;
2124 }
2125
2126 /**
2127 * <!-- begin-user-doc -->
2128 * <!-- end-user-doc -->
2129 * @generated
2130 */
2131 public EAttribute getProblem_Name() {
2132 return (EAttribute) problemEClass.getEStructuralFeatures().get(0);
2133 }
2134
2135 /**
2136 * <!-- begin-user-doc -->
2137 * <!-- end-user-doc -->
2138 * @generated
2139 */
2140 public EReference getProblem_Statements() {
2141 return (EReference) problemEClass.getEStructuralFeatures().get(1);
2142 }
2143
2144 /**
2145 * <!-- begin-user-doc -->
2146 * <!-- end-user-doc -->
2147 * @generated
2148 */
2149 public EReference getProblem_Symbols() {
2150 return (EReference) problemEClass.getEStructuralFeatures().get(2);
2151 }
2152
2153 /**
2154 * <!-- begin-user-doc -->
2155 * <!-- end-user-doc -->
2156 * @generated
2157 */
2158 public EReference getProblem_Imports() {
2159 return (EReference) problemEClass.getEStructuralFeatures().get(3);
2160 }
2161
2162 /**
2163 * <!-- begin-user-doc -->
2164 * <!-- end-user-doc -->
2165 * @generated
2166 */
2167 public EClass getTypedStarArgument() {
2168 return typedStarArgumentEClass;
2169 }
2170
2171 /**
2172 * <!-- begin-user-doc -->
2173 * <!-- end-user-doc -->
2174 * @generated
2175 */
2176 public EClass getTypedVariableArgument() {
2177 return typedVariableArgumentEClass;
2178 }
2179
2180 /**
2181 * <!-- begin-user-doc -->
2182 * <!-- end-user-doc -->
2183 * @generated
2184 */
2185 public EAttribute getTypedVariableArgument_Name() {
2186 return (EAttribute) typedVariableArgumentEClass.getEStructuralFeatures().get(0);
2187 }
2188
2189 /**
2190 * <!-- begin-user-doc -->
2191 * <!-- end-user-doc -->
2192 * @generated
2193 */
2194 public EClass getUnnamedErrorPredicateDefintion() {
2195 return unnamedErrorPredicateDefintionEClass;
2196 }
2197
2198 /**
2199 * <!-- begin-user-doc -->
2200 * <!-- end-user-doc -->
2201 * @generated
2202 */
2203 public EReference getUnnamedErrorPredicateDefintion_ArgumentList() {
2204 return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(0);
2205 }
2206
2207 /**
2208 * <!-- begin-user-doc -->
2209 * <!-- end-user-doc -->
2210 * @generated
2211 */
2212 public EReference getUnnamedErrorPredicateDefintion_Body() {
2213 return (EReference) unnamedErrorPredicateDefintionEClass.getEStructuralFeatures().get(1);
2214 }
2215
2216 /**
2217 * <!-- begin-user-doc -->
2218 * <!-- end-user-doc -->
2219 * @generated
2220 */
2221 public EClass getObjectiveDeclaration() {
2222 return objectiveDeclarationEClass;
2223 }
2224
2225 /**
2226 * <!-- begin-user-doc -->
2227 * <!-- end-user-doc -->
2228 * @generated
2229 */
2230 public EAttribute getObjectiveDeclaration_Kind() {
2231 return (EAttribute) objectiveDeclarationEClass.getEStructuralFeatures().get(0);
2232 }
2233
2234 /**
2235 * <!-- begin-user-doc -->
2236 * <!-- end-user-doc -->
2237 * @generated
2238 */
2239 public EReference getObjectiveDeclaration_Objective() {
2240 return (EReference) objectiveDeclarationEClass.getEStructuralFeatures().get(1);
2241 }
2242
2243 /**
2244 * <!-- begin-user-doc -->
2245 * <!-- end-user-doc -->
2246 * @generated
2247 */
2248 public EClass getScopeDeclaration() {
2249 return scopeDeclarationEClass;
2250 }
2251
2252 /**
2253 * <!-- begin-user-doc -->
2254 * <!-- end-user-doc -->
2255 * @generated
2256 */
2257 public EReference getScopeDeclaration_Type() {
2258 return (EReference) scopeDeclarationEClass.getEStructuralFeatures().get(0);
2259 }
2260
2261 /**
2262 * <!-- begin-user-doc -->
2263 * <!-- end-user-doc -->
2264 * @generated
2265 */
2266 public EClass getExactScope() {
2267 return exactScopeEClass;
2268 }
2269
2270 /**
2271 * <!-- begin-user-doc -->
2272 * <!-- end-user-doc -->
2273 * @generated
2274 */
2275 public EAttribute getExactScope_Size() {
2276 return (EAttribute) exactScopeEClass.getEStructuralFeatures().get(0);
2277 }
2278
2279 /**
2280 * <!-- begin-user-doc -->
2281 * <!-- end-user-doc -->
2282 * @generated
2283 */
2284 public EClass getBoundedScope() {
2285 return boundedScopeEClass;
2286 }
2287
2288 /**
2289 * <!-- begin-user-doc -->
2290 * <!-- end-user-doc -->
2291 * @generated
2292 */
2293 public EAttribute getBoundedScope_LowerBound() {
2294 return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(0);
2295 }
2296
2297 /**
2298 * <!-- begin-user-doc -->
2299 * <!-- end-user-doc -->
2300 * @generated
2301 */
2302 public EAttribute getBoundedScope_UpperBound() {
2303 return (EAttribute) boundedScopeEClass.getEStructuralFeatures().get(1);
2304 }
2305
2306 /**
2307 * <!-- begin-user-doc -->
2308 * <!-- end-user-doc -->
2309 * @generated
2310 */
2311 public EClass getLowerBoundedScope() {
2312 return lowerBoundedScopeEClass;
2313 }
2314
2315 /**
2316 * <!-- begin-user-doc -->
2317 * <!-- end-user-doc -->
2318 * @generated
2319 */
2320 public EAttribute getLowerBoundedScope_LowerBound() {
2321 return (EAttribute) lowerBoundedScopeEClass.getEStructuralFeatures().get(0);
2322 }
2323
2324 /**
2325 * <!-- begin-user-doc -->
2326 * <!-- end-user-doc -->
2327 * @generated
2328 */
2329 public EClass getNamespaceImport() {
2330 return namespaceImportEClass;
2331 }
2332
2333 /**
2334 * <!-- begin-user-doc -->
2335 * <!-- end-user-doc -->
2336 * @generated
2337 */
2338 public EAttribute getNamespaceImport_ImportedNamespace() {
2339 return (EAttribute) namespaceImportEClass.getEStructuralFeatures().get(0);
2340 }
2341
2342 /**
2343 * <!-- begin-user-doc -->
2344 * <!-- end-user-doc -->
2345 * @generated
2346 */
2347 public EClass getImport() {
2348 return importEClass;
2349 }
2350
2351 /**
2352 * <!-- begin-user-doc -->
2353 * <!-- end-user-doc -->
2354 * @generated
2355 */
2356 public EAttribute getImport_Alias() {
2357 return (EAttribute) importEClass.getEStructuralFeatures().get(0);
2358 }
2359
2360 /**
2361 * <!-- begin-user-doc -->
2362 * <!-- end-user-doc -->
2363 * @generated
2364 */
2365 public EClass getUriImport() {
2366 return uriImportEClass;
2367 }
2368
2369 /**
2370 * <!-- begin-user-doc -->
2371 * <!-- end-user-doc -->
2372 * @generated
2373 */
2374 public EAttribute getUriImport_Uri() {
2375 return (EAttribute) uriImportEClass.getEStructuralFeatures().get(0);
2376 }
2377
2378 /**
2379 * <!-- begin-user-doc -->
2380 * <!-- end-user-doc -->
2381 * @generated
2382 */
2383 public EEnum getUnaryOperator() {
2384 return unaryOperatorEEnum;
2385 }
2386
2387 /**
2388 * <!-- begin-user-doc -->
2389 * <!-- end-user-doc -->
2390 * @generated
2391 */
2392 public EEnum getBinaryOperator() {
2393 return binaryOperatorEEnum;
2394 }
2395
2396 /**
2397 * <!-- begin-user-doc -->
2398 * <!-- end-user-doc -->
2399 * @generated
2400 */
2401 public EEnum getLogicValue() {
2402 return logicValueEEnum;
2403 }
2404
2405 /**
2406 * <!-- begin-user-doc -->
2407 * <!-- end-user-doc -->
2408 * @generated
2409 */
2410 public EEnum getObjectiveKind() {
2411 return objectiveKindEEnum;
2412 }
2413
2414 /**
2415 * <!-- begin-user-doc -->
2416 * <!-- end-user-doc -->
2417 * @generated
2418 */
2419 public EEnum getAttributeKind() {
2420 return attributeKindEEnum;
2421 }
2422
2423 /**
2424 * <!-- begin-user-doc -->
2425 * <!-- end-user-doc -->
2426 * @generated
2427 */
2428 public SolverLanguageFactory getSolverLanguageFactory() {
2429 return (SolverLanguageFactory) getEFactoryInstance();
2430 }
2431
2432 /**
2433 * <!-- begin-user-doc -->
2434 * <!-- end-user-doc -->
2435 * @generated
2436 */
2437 private boolean isCreated = false;
2438
2439 /**
2440 * Creates the meta-model objects for the package. This method is
2441 * guarded to have no affect on any invocation but its first.
2442 * <!-- begin-user-doc -->
2443 * <!-- end-user-doc -->
2444 * @generated
2445 */
2446 public void createPackageContents() {
2447 if (isCreated)
2448 return;
2449 isCreated = true;
2450
2451 // Create classes and their features
2452 pathComponentEClass = createEClass(PATH_COMPONENT);
2453 createEReference(pathComponentEClass, PATH_COMPONENT__SYMBOL);
2454 createEAttribute(pathComponentEClass, PATH_COMPONENT__INVERSE);
2455 createEAttribute(pathComponentEClass, PATH_COMPONENT__TRANSITIVE_CLOSURE);
2456 createEAttribute(pathComponentEClass, PATH_COMPONENT__REFLEXIVE_TRANSITIVE_CLOSURE);
2457
2458 symbolEClass = createEClass(SYMBOL);
2459 createEAttribute(symbolEClass, SYMBOL__NAME);
2460
2461 callEClass = createEClass(CALL);
2462 createEReference(callEClass, CALL__FUNCTOR);
2463 createEReference(callEClass, CALL__ARGUMENT_LIST);
2464
2465 referenceEClass = createEClass(REFERENCE);
2466 createEReference(referenceEClass, REFERENCE__COMPONENTS);
2467
2468 expressionEClass = createEClass(EXPRESSION);
2469 createEReference(expressionEClass, EXPRESSION__EXISTS_VARIABLES);
2470
2471 argumentEClass = createEClass(ARGUMENT);
2472
2473 argumentListEClass = createEClass(ARGUMENT_LIST);
2474 createEReference(argumentListEClass, ARGUMENT_LIST__ARGUMENTS);
2475
2476 expressionArgumentEClass = createEClass(EXPRESSION_ARGUMENT);
2477 createEReference(expressionArgumentEClass, EXPRESSION_ARGUMENT__EXPRESSION);
2478
2479 starArgumentEClass = createEClass(STAR_ARGUMENT);
2480
2481 typedArgumentEClass = createEClass(TYPED_ARGUMENT);
2482 createEReference(typedArgumentEClass, TYPED_ARGUMENT__TYPE_REFERENCE);
2483
2484 multiaryExpessionEClass = createEClass(MULTIARY_EXPESSION);
2485 createEReference(multiaryExpessionEClass, MULTIARY_EXPESSION__CHILDREN);
2486
2487 variableEClass = createEClass(VARIABLE);
2488 createEReference(variableEClass, VARIABLE__TYPE_REFERENCE);
2489
2490 unaryExpressionEClass = createEClass(UNARY_EXPRESSION);
2491 createEReference(unaryExpressionEClass, UNARY_EXPRESSION__BODY);
2492 createEAttribute(unaryExpressionEClass, UNARY_EXPRESSION__OP);
2493
2494 binaryExpressionEClass = createEClass(BINARY_EXPRESSION);
2495 createEAttribute(binaryExpressionEClass, BINARY_EXPRESSION__OP);
2496 createEReference(binaryExpressionEClass, BINARY_EXPRESSION__LEFT);
2497 createEReference(binaryExpressionEClass, BINARY_EXPRESSION__RIGHT);
2498
2499 disjunctionEClass = createEClass(DISJUNCTION);
2500
2501 conjunctionEClass = createEClass(CONJUNCTION);
2502
2503 conditionalExpressionEClass = createEClass(CONDITIONAL_EXPRESSION);
2504 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__CONDITION);
2505 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__THEN);
2506 createEReference(conditionalExpressionEClass, CONDITIONAL_EXPRESSION__ELSE);
2507
2508 switchEClass = createEClass(SWITCH);
2509 createEReference(switchEClass, SWITCH__CASES);
2510
2511 caseEClass = createEClass(CASE);
2512 createEReference(caseEClass, CASE__CONDITION);
2513 createEReference(caseEClass, CASE__BODY);
2514
2515 letExpressionEClass = createEClass(LET_EXPRESSION);
2516 createEReference(letExpressionEClass, LET_EXPRESSION__BINDINGS);
2517 createEReference(letExpressionEClass, LET_EXPRESSION__BODY);
2518
2519 letBindingEClass = createEClass(LET_BINDING);
2520 createEReference(letBindingEClass, LET_BINDING__VALUE);
2521 createEReference(letBindingEClass, LET_BINDING__VARIABLE);
2522 createEAttribute(letBindingEClass, LET_BINDING__NAME);
2523 createEReference(letBindingEClass, LET_BINDING__TYPE);
2524
2525 literalEClass = createEClass(LITERAL);
2526
2527 intLiteralEClass = createEClass(INT_LITERAL);
2528 createEAttribute(intLiteralEClass, INT_LITERAL__VALUE);
2529
2530 realLiteralEClass = createEClass(REAL_LITERAL);
2531 createEAttribute(realLiteralEClass, REAL_LITERAL__VALUE);
2532
2533 stringLiteralEClass = createEClass(STRING_LITERAL);
2534 createEAttribute(stringLiteralEClass, STRING_LITERAL__VALUE);
2535
2536 logicLiteralEClass = createEClass(LOGIC_LITERAL);
2537 createEAttribute(logicLiteralEClass, LOGIC_LITERAL__VALUE);
2538
2539 emptyLiteralEClass = createEClass(EMPTY_LITERAL);
2540
2541 castExpressionEClass = createEClass(CAST_EXPRESSION);
2542 createEReference(castExpressionEClass, CAST_EXPRESSION__BODY);
2543 createEReference(castExpressionEClass, CAST_EXPRESSION__TARGET_TYPE);
2544
2545 aggregateExpressionEClass = createEClass(AGGREGATE_EXPRESSION);
2546 createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__FORALL_VARIABLES);
2547 createEReference(aggregateExpressionEClass, AGGREGATE_EXPRESSION__CONDITION);
2548
2549 countEClass = createEClass(COUNT);
2550
2551 aggregationEClass = createEClass(AGGREGATION);
2552 createEReference(aggregationEClass, AGGREGATION__VALUE);
2553 createEReference(aggregationEClass, AGGREGATION__OP);
2554
2555 forallEClass = createEClass(FORALL);
2556 createEReference(forallEClass, FORALL__BODY);
2557
2558 typeReferenceEClass = createEClass(TYPE_REFERENCE);
2559 createEAttribute(typeReferenceEClass, TYPE_REFERENCE__FORCE_OBJECT_TYPE);
2560 createEReference(typeReferenceEClass, TYPE_REFERENCE__TYPE);
2561
2562 infinityLiteralEClass = createEClass(INFINITY_LITERAL);
2563
2564 intervalEClass = createEClass(INTERVAL);
2565 createEReference(intervalEClass, INTERVAL__LOWER_BOUND);
2566 createEReference(intervalEClass, INTERVAL__UPPER_BOUND);
2567
2568 functorEClass = createEClass(FUNCTOR);
2569 createEReference(functorEClass, FUNCTOR__PARAMETERS);
2570
2571 relationEClass = createEClass(RELATION);
2572
2573 baseRelationEClass = createEClass(BASE_RELATION);
2574
2575 predicateEClass = createEClass(PREDICATE);
2576
2577 datatypeEClass = createEClass(DATATYPE);
2578
2579 functionEClass = createEClass(FUNCTION);
2580 createEReference(functionEClass, FUNCTION__RESULT_TYPE);
2581
2582 metricEClass = createEClass(METRIC);
2583
2584 operatorEClass = createEClass(OPERATOR);
2585
2586 nodeEClass = createEClass(NODE);
2587 createEAttribute(nodeEClass, NODE__NAMED);
2588
2589 statementEClass = createEClass(STATEMENT);
2590
2591 abstractAssertionEClass = createEClass(ABSTRACT_ASSERTION);
2592 createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__EXPRESSION);
2593 createEReference(abstractAssertionEClass, ABSTRACT_ASSERTION__RANGE);
2594
2595 functorDefinitonEClass = createEClass(FUNCTOR_DEFINITON);
2596 createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__HEAD);
2597 createEReference(functorDefinitonEClass, FUNCTOR_DEFINITON__BODY);
2598
2599 predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION);
2600
2601 functionDefinitionEClass = createEClass(FUNCTION_DEFINITION);
2602 createEReference(functionDefinitionEClass, FUNCTION_DEFINITION__RESULT_TYPE);
2603
2604 attributeEClass = createEClass(ATTRIBUTE);
2605 createEReference(attributeEClass, ATTRIBUTE__TARGET);
2606 createEAttribute(attributeEClass, ATTRIBUTE__KIND);
2607
2608 externDeclarationEClass = createEClass(EXTERN_DECLARATION);
2609 createEAttribute(externDeclarationEClass, EXTERN_DECLARATION__NAME);
2610
2611 externFunctorDeclarationEClass = createEClass(EXTERN_FUNCTOR_DECLARATION);
2612 createEReference(externFunctorDeclarationEClass, EXTERN_FUNCTOR_DECLARATION__ARGUMENT_LIST);
2613
2614 externPredicateDeclarationEClass = createEClass(EXTERN_PREDICATE_DECLARATION);
2615
2616 externFunctionDeclarationEClass = createEClass(EXTERN_FUNCTION_DECLARATION);
2617 createEReference(externFunctionDeclarationEClass, EXTERN_FUNCTION_DECLARATION__RESULT_TYPE);
2618
2619 externAggregationOperatorDeclarationEClass = createEClass(EXTERN_AGGREGATION_OPERATOR_DECLARATION);
2620 createEReference(externAggregationOperatorDeclarationEClass,
2621 EXTERN_AGGREGATION_OPERATOR_DECLARATION__ARGUMENT_TYPE);
2622 createEReference(externAggregationOperatorDeclarationEClass,
2623 EXTERN_AGGREGATION_OPERATOR_DECLARATION__RESULT_TYPE);
2624
2625 externDatatypeDeclarationEClass = createEClass(EXTERN_DATATYPE_DECLARATION);
2626
2627 classDeclarationEClass = createEClass(CLASS_DECLARATION);
2628 createEReference(classDeclarationEClass, CLASS_DECLARATION__FIELDS);
2629 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__NAME);
2630 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT);
2631 createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPERTYPES);
2632 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ROOT);
2633
2634 enumDeclarationEClass = createEClass(ENUM_DECLARATION);
2635 createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS);
2636 createEAttribute(enumDeclarationEClass, ENUM_DECLARATION__NAME);
2637
2638 enumLiteralEClass = createEClass(ENUM_LITERAL);
2639 createEAttribute(enumLiteralEClass, ENUM_LITERAL__NAME);
2640
2641 fieldEClass = createEClass(FIELD);
2642 createEAttribute(fieldEClass, FIELD__CONTAINMENT);
2643 createEAttribute(fieldEClass, FIELD__CROSS_REFERENCE);
2644 createEReference(fieldEClass, FIELD__OPPOSITE);
2645 createEReference(fieldEClass, FIELD__MULTIPLICITY);
2646 createEReference(fieldEClass, FIELD__TYPE);
2647 createEAttribute(fieldEClass, FIELD__NAME);
2648
2649 multiplicityEClass = createEClass(MULTIPLICITY);
2650
2651 defaultAssertionEClass = createEClass(DEFAULT_ASSERTION);
2652
2653 assertionEClass = createEClass(ASSERTION);
2654
2655 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY);
2656
2657 exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY);
2658 createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__VALUE);
2659
2660 boundedMultiplicityEClass = createEClass(BOUNDED_MULTIPLICITY);
2661 createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__LOWER_BOUND);
2662 createEAttribute(boundedMultiplicityEClass, BOUNDED_MULTIPLICITY__UPPER_BOUND);
2663
2664 inlinePredicateAttrributesEClass = createEClass(INLINE_PREDICATE_ATTRRIBUTES);
2665 createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__ERROR);
2666 createEAttribute(inlinePredicateAttrributesEClass, INLINE_PREDICATE_ATTRRIBUTES__FUNCTIONAL);
2667
2668 aggregationOperatorEClass = createEClass(AGGREGATION_OPERATOR);
2669 createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__ARGUMENT_TYPE);
2670 createEReference(aggregationOperatorEClass, AGGREGATION_OPERATOR__RESULT_TYPE);
2671
2672 problemEClass = createEClass(PROBLEM);
2673 createEAttribute(problemEClass, PROBLEM__NAME);
2674 createEReference(problemEClass, PROBLEM__STATEMENTS);
2675 createEReference(problemEClass, PROBLEM__SYMBOLS);
2676 createEReference(problemEClass, PROBLEM__IMPORTS);
2677
2678 typedStarArgumentEClass = createEClass(TYPED_STAR_ARGUMENT);
2679
2680 typedVariableArgumentEClass = createEClass(TYPED_VARIABLE_ARGUMENT);
2681 createEAttribute(typedVariableArgumentEClass, TYPED_VARIABLE_ARGUMENT__NAME);
2682
2683 unnamedErrorPredicateDefintionEClass = createEClass(UNNAMED_ERROR_PREDICATE_DEFINTION);
2684 createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__ARGUMENT_LIST);
2685 createEReference(unnamedErrorPredicateDefintionEClass, UNNAMED_ERROR_PREDICATE_DEFINTION__BODY);
2686
2687 objectiveDeclarationEClass = createEClass(OBJECTIVE_DECLARATION);
2688 createEAttribute(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__KIND);
2689 createEReference(objectiveDeclarationEClass, OBJECTIVE_DECLARATION__OBJECTIVE);
2690
2691 scopeDeclarationEClass = createEClass(SCOPE_DECLARATION);
2692 createEReference(scopeDeclarationEClass, SCOPE_DECLARATION__TYPE);
2693
2694 exactScopeEClass = createEClass(EXACT_SCOPE);
2695 createEAttribute(exactScopeEClass, EXACT_SCOPE__SIZE);
2696
2697 boundedScopeEClass = createEClass(BOUNDED_SCOPE);
2698 createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__LOWER_BOUND);
2699 createEAttribute(boundedScopeEClass, BOUNDED_SCOPE__UPPER_BOUND);
2700
2701 lowerBoundedScopeEClass = createEClass(LOWER_BOUNDED_SCOPE);
2702 createEAttribute(lowerBoundedScopeEClass, LOWER_BOUNDED_SCOPE__LOWER_BOUND);
2703
2704 namespaceImportEClass = createEClass(NAMESPACE_IMPORT);
2705 createEAttribute(namespaceImportEClass, NAMESPACE_IMPORT__IMPORTED_NAMESPACE);
2706
2707 importEClass = createEClass(IMPORT);
2708 createEAttribute(importEClass, IMPORT__ALIAS);
2709
2710 uriImportEClass = createEClass(URI_IMPORT);
2711 createEAttribute(uriImportEClass, URI_IMPORT__URI);
2712
2713 // Create enums
2714 unaryOperatorEEnum = createEEnum(UNARY_OPERATOR);
2715 binaryOperatorEEnum = createEEnum(BINARY_OPERATOR);
2716 logicValueEEnum = createEEnum(LOGIC_VALUE);
2717 objectiveKindEEnum = createEEnum(OBJECTIVE_KIND);
2718 attributeKindEEnum = createEEnum(ATTRIBUTE_KIND);
2719 }
2720
2721 /**
2722 * <!-- begin-user-doc -->
2723 * <!-- end-user-doc -->
2724 * @generated
2725 */
2726 private boolean isInitialized = false;
2727
2728 /**
2729 * Complete the initialization of the package and its meta-model. This
2730 * method is guarded to have no affect on any invocation but its first.
2731 * <!-- begin-user-doc -->
2732 * <!-- end-user-doc -->
2733 * @generated
2734 */
2735 public void initializePackageContents() {
2736 if (isInitialized)
2737 return;
2738 isInitialized = true;
2739
2740 // Initialize package
2741 setName(eNAME);
2742 setNsPrefix(eNS_PREFIX);
2743 setNsURI(eNS_URI);
2744
2745 // Create type parameters
2746
2747 // Set bounds for type parameters
2748
2749 // Add supertypes to classes
2750 callEClass.getESuperTypes().add(this.getExpression());
2751 referenceEClass.getESuperTypes().add(this.getExpression());
2752 expressionEClass.getESuperTypes().add(this.getStatement());
2753 expressionArgumentEClass.getESuperTypes().add(this.getArgument());
2754 starArgumentEClass.getESuperTypes().add(this.getArgument());
2755 typedArgumentEClass.getESuperTypes().add(this.getArgument());
2756 multiaryExpessionEClass.getESuperTypes().add(this.getExpression());
2757 variableEClass.getESuperTypes().add(this.getSymbol());
2758 unaryExpressionEClass.getESuperTypes().add(this.getExpression());
2759 binaryExpressionEClass.getESuperTypes().add(this.getExpression());
2760 disjunctionEClass.getESuperTypes().add(this.getMultiaryExpession());
2761 conjunctionEClass.getESuperTypes().add(this.getMultiaryExpession());
2762 conditionalExpressionEClass.getESuperTypes().add(this.getExpression());
2763 switchEClass.getESuperTypes().add(this.getExpression());
2764 caseEClass.getESuperTypes().add(this.getExpression());
2765 letExpressionEClass.getESuperTypes().add(this.getExpression());
2766 literalEClass.getESuperTypes().add(this.getExpression());
2767 intLiteralEClass.getESuperTypes().add(this.getLiteral());
2768 realLiteralEClass.getESuperTypes().add(this.getLiteral());
2769 stringLiteralEClass.getESuperTypes().add(this.getLiteral());
2770 logicLiteralEClass.getESuperTypes().add(this.getLiteral());
2771 emptyLiteralEClass.getESuperTypes().add(this.getLiteral());
2772 castExpressionEClass.getESuperTypes().add(this.getExpression());
2773 aggregateExpressionEClass.getESuperTypes().add(this.getExpression());
2774 countEClass.getESuperTypes().add(this.getAggregateExpression());
2775 aggregationEClass.getESuperTypes().add(this.getAggregateExpression());
2776 forallEClass.getESuperTypes().add(this.getAggregateExpression());
2777 infinityLiteralEClass.getESuperTypes().add(this.getLiteral());
2778 intervalEClass.getESuperTypes().add(this.getExpression());
2779 functorEClass.getESuperTypes().add(this.getSymbol());
2780 relationEClass.getESuperTypes().add(this.getFunctor());
2781 baseRelationEClass.getESuperTypes().add(this.getRelation());
2782 predicateEClass.getESuperTypes().add(this.getRelation());
2783 datatypeEClass.getESuperTypes().add(this.getRelation());
2784 functionEClass.getESuperTypes().add(this.getFunctor());
2785 metricEClass.getESuperTypes().add(this.getFunction());
2786 operatorEClass.getESuperTypes().add(this.getFunction());
2787 nodeEClass.getESuperTypes().add(this.getSymbol());
2788 abstractAssertionEClass.getESuperTypes().add(this.getStatement());
2789 functorDefinitonEClass.getESuperTypes().add(this.getStatement());
2790 predicateDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton());
2791 predicateDefinitionEClass.getESuperTypes().add(this.getInlinePredicateAttrributes());
2792 functionDefinitionEClass.getESuperTypes().add(this.getFunctorDefiniton());
2793 attributeEClass.getESuperTypes().add(this.getStatement());
2794 externDeclarationEClass.getESuperTypes().add(this.getStatement());
2795 externFunctorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2796 externPredicateDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration());
2797 externPredicateDeclarationEClass.getESuperTypes().add(this.getInlinePredicateAttrributes());
2798 externFunctionDeclarationEClass.getESuperTypes().add(this.getExternFunctorDeclaration());
2799 externAggregationOperatorDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2800 externDatatypeDeclarationEClass.getESuperTypes().add(this.getExternDeclaration());
2801 classDeclarationEClass.getESuperTypes().add(this.getStatement());
2802 enumDeclarationEClass.getESuperTypes().add(this.getStatement());
2803 defaultAssertionEClass.getESuperTypes().add(this.getAbstractAssertion());
2804 assertionEClass.getESuperTypes().add(this.getAbstractAssertion());
2805 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2806 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2807 boundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
2808 aggregationOperatorEClass.getESuperTypes().add(this.getSymbol());
2809 typedStarArgumentEClass.getESuperTypes().add(this.getTypedArgument());
2810 typedVariableArgumentEClass.getESuperTypes().add(this.getTypedArgument());
2811 unnamedErrorPredicateDefintionEClass.getESuperTypes().add(this.getStatement());
2812 objectiveDeclarationEClass.getESuperTypes().add(this.getStatement());
2813 scopeDeclarationEClass.getESuperTypes().add(this.getStatement());
2814 exactScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2815 boundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2816 lowerBoundedScopeEClass.getESuperTypes().add(this.getScopeDeclaration());
2817 namespaceImportEClass.getESuperTypes().add(this.getImport());
2818 uriImportEClass.getESuperTypes().add(this.getImport());
2819
2820 // Initialize classes, features, and operations; add parameters
2821 initEClass(pathComponentEClass, PathComponent.class, "PathComponent", !IS_ABSTRACT, !IS_INTERFACE,
2822 IS_GENERATED_INSTANCE_CLASS);
2823 initEReference(getPathComponent_Symbol(), this.getSymbol(), null, "symbol", null, 0, 1, PathComponent.class,
2824 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2825 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2826 initEAttribute(getPathComponent_Inverse(), ecorePackage.getEBoolean(), "inverse", null, 0, 1,
2827 PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
2828 !IS_DERIVED, IS_ORDERED);
2829 initEAttribute(getPathComponent_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0,
2830 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
2831 !IS_DERIVED, IS_ORDERED);
2832 initEAttribute(getPathComponent_ReflexiveTransitiveClosure(), ecorePackage.getEBoolean(),
2833 "reflexiveTransitiveClosure", null, 0, 1, PathComponent.class, !IS_TRANSIENT, !IS_VOLATILE,
2834 IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2835
2836 initEClass(symbolEClass, Symbol.class, "Symbol", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2837 initEAttribute(getSymbol_Name(), ecorePackage.getEString(), "name", null, 0, 1, Symbol.class, !IS_TRANSIENT,
2838 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2839
2840 initEClass(callEClass, Call.class, "Call", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2841 initEReference(getCall_Functor(), this.getReference(), null, "functor", null, 0, 1, Call.class, !IS_TRANSIENT,
2842 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2843 IS_ORDERED);
2844 initEReference(getCall_ArgumentList(), this.getArgumentList(), null, "argumentList", null, 0, 1, Call.class,
2845 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2846 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2847
2848 initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE,
2849 IS_GENERATED_INSTANCE_CLASS);
2850 initEReference(getReference_Components(), this.getPathComponent(), null, "components", null, 0, -1,
2851 Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2852 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2853
2854 initEClass(expressionEClass, Expression.class, "Expression", IS_ABSTRACT, !IS_INTERFACE,
2855 IS_GENERATED_INSTANCE_CLASS);
2856 initEReference(getExpression_ExistsVariables(), this.getVariable(), null, "existsVariables", null, 0, -1,
2857 Expression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2858 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2859
2860 initEClass(argumentEClass, Argument.class, "Argument", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2861
2862 initEClass(argumentListEClass, ArgumentList.class, "ArgumentList", !IS_ABSTRACT, !IS_INTERFACE,
2863 IS_GENERATED_INSTANCE_CLASS);
2864 initEReference(getArgumentList_Arguments(), this.getArgument(), null, "arguments", null, 0, -1,
2865 ArgumentList.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2866 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2867
2868 initEClass(expressionArgumentEClass, ExpressionArgument.class, "ExpressionArgument", !IS_ABSTRACT,
2869 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2870 initEReference(getExpressionArgument_Expression(), this.getExpression(), null, "expression", null, 0, 1,
2871 ExpressionArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2872 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2873
2874 initEClass(starArgumentEClass, StarArgument.class, "StarArgument", !IS_ABSTRACT, !IS_INTERFACE,
2875 IS_GENERATED_INSTANCE_CLASS);
2876
2877 initEClass(typedArgumentEClass, TypedArgument.class, "TypedArgument", IS_ABSTRACT, !IS_INTERFACE,
2878 IS_GENERATED_INSTANCE_CLASS);
2879 initEReference(getTypedArgument_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1,
2880 TypedArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2881 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2882
2883 initEClass(multiaryExpessionEClass, MultiaryExpession.class, "MultiaryExpession", IS_ABSTRACT, !IS_INTERFACE,
2884 IS_GENERATED_INSTANCE_CLASS);
2885 initEReference(getMultiaryExpession_Children(), this.getExpression(), null, "children", null, 0, -1,
2886 MultiaryExpession.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2887 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2888
2889 initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE,
2890 IS_GENERATED_INSTANCE_CLASS);
2891 initEReference(getVariable_TypeReference(), this.getTypeReference(), null, "typeReference", null, 0, 1,
2892 Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2893 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2894
2895 initEClass(unaryExpressionEClass, UnaryExpression.class, "UnaryExpression", !IS_ABSTRACT, !IS_INTERFACE,
2896 IS_GENERATED_INSTANCE_CLASS);
2897 initEReference(getUnaryExpression_Body(), this.getExpression(), null, "body", null, 0, 1, UnaryExpression.class,
2898 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2899 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2900 initEAttribute(getUnaryExpression_Op(), this.getUnaryOperator(), "op", null, 0, 1, UnaryExpression.class,
2901 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2902
2903 initEClass(binaryExpressionEClass, BinaryExpression.class, "BinaryExpression", !IS_ABSTRACT, !IS_INTERFACE,
2904 IS_GENERATED_INSTANCE_CLASS);
2905 initEAttribute(getBinaryExpression_Op(), this.getBinaryOperator(), "op", null, 0, 1, BinaryExpression.class,
2906 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2907 initEReference(getBinaryExpression_Left(), this.getExpression(), null, "left", null, 0, 1,
2908 BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2909 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2910 initEReference(getBinaryExpression_Right(), this.getExpression(), null, "right", null, 0, 1,
2911 BinaryExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2912 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2913
2914 initEClass(disjunctionEClass, Disjunction.class, "Disjunction", !IS_ABSTRACT, !IS_INTERFACE,
2915 IS_GENERATED_INSTANCE_CLASS);
2916
2917 initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE,
2918 IS_GENERATED_INSTANCE_CLASS);
2919
2920 initEClass(conditionalExpressionEClass, ConditionalExpression.class, "ConditionalExpression", !IS_ABSTRACT,
2921 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2922 initEReference(getConditionalExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1,
2923 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2924 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2925 initEReference(getConditionalExpression_Then(), this.getExpression(), null, "then", null, 0, 1,
2926 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2927 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2928 initEReference(getConditionalExpression_Else(), this.getExpression(), null, "else", null, 0, 1,
2929 ConditionalExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
2930 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2931
2932 initEClass(switchEClass, Switch.class, "Switch", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2933 initEReference(getSwitch_Cases(), this.getCase(), null, "cases", null, 0, -1, Switch.class, !IS_TRANSIENT,
2934 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2935 IS_ORDERED);
2936
2937 initEClass(caseEClass, Case.class, "Case", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2938 initEReference(getCase_Condition(), this.getExpression(), null, "condition", null, 0, 1, Case.class,
2939 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2940 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2941 initEReference(getCase_Body(), this.getExpression(), null, "body", null, 0, 1, Case.class, !IS_TRANSIENT,
2942 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
2943 IS_ORDERED);
2944
2945 initEClass(letExpressionEClass, LetExpression.class, "LetExpression", !IS_ABSTRACT, !IS_INTERFACE,
2946 IS_GENERATED_INSTANCE_CLASS);
2947 initEReference(getLetExpression_Bindings(), this.getLetBinding(), null, "bindings", null, 0, -1,
2948 LetExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
2949 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2950 initEReference(getLetExpression_Body(), this.getExpression(), null, "body", null, 0, 1, LetExpression.class,
2951 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2952 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2953
2954 initEClass(letBindingEClass, LetBinding.class, "LetBinding", !IS_ABSTRACT, !IS_INTERFACE,
2955 IS_GENERATED_INSTANCE_CLASS);
2956 initEReference(getLetBinding_Value(), this.getExpression(), null, "value", null, 0, 1, LetBinding.class,
2957 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2958 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2959 initEReference(getLetBinding_Variable(), this.getVariable(), null, "variable", null, 0, 1, LetBinding.class,
2960 IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
2961 !IS_DERIVED, IS_ORDERED);
2962 initEAttribute(getLetBinding_Name(), ecorePackage.getEString(), "name", null, 0, 1, LetBinding.class,
2963 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2964 initEReference(getLetBinding_Type(), this.getSymbol(), null, "type", null, 0, 1, LetBinding.class,
2965 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2966 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2967
2968 initEClass(literalEClass, Literal.class, "Literal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
2969
2970 initEClass(intLiteralEClass, IntLiteral.class, "IntLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2971 IS_GENERATED_INSTANCE_CLASS);
2972 initEAttribute(getIntLiteral_Value(), ecorePackage.getEInt(), "value", null, 0, 1, IntLiteral.class,
2973 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2974
2975 initEClass(realLiteralEClass, RealLiteral.class, "RealLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2976 IS_GENERATED_INSTANCE_CLASS);
2977 initEAttribute(getRealLiteral_Value(), ecorePackage.getEBigDecimal(), "value", null, 0, 1, RealLiteral.class,
2978 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2979
2980 initEClass(stringLiteralEClass, StringLiteral.class, "StringLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2981 IS_GENERATED_INSTANCE_CLASS);
2982 initEAttribute(getStringLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, StringLiteral.class,
2983 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2984
2985 initEClass(logicLiteralEClass, LogicLiteral.class, "LogicLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2986 IS_GENERATED_INSTANCE_CLASS);
2987 initEAttribute(getLogicLiteral_Value(), this.getLogicValue(), "value", null, 0, 1, LogicLiteral.class,
2988 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2989
2990 initEClass(emptyLiteralEClass, EmptyLiteral.class, "EmptyLiteral", !IS_ABSTRACT, !IS_INTERFACE,
2991 IS_GENERATED_INSTANCE_CLASS);
2992
2993 initEClass(castExpressionEClass, CastExpression.class, "CastExpression", !IS_ABSTRACT, !IS_INTERFACE,
2994 IS_GENERATED_INSTANCE_CLASS);
2995 initEReference(getCastExpression_Body(), this.getExpression(), null, "body", null, 0, 1, CastExpression.class,
2996 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
2997 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
2998 initEReference(getCastExpression_TargetType(), this.getSymbol(), null, "targetType", null, 0, 1,
2999 CastExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3000 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3001
3002 initEClass(aggregateExpressionEClass, AggregateExpression.class, "AggregateExpression", IS_ABSTRACT,
3003 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3004 initEReference(getAggregateExpression_ForallVariables(), this.getVariable(), null, "forallVariables", null, 0,
3005 -1, AggregateExpression.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3006 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3007 initEReference(getAggregateExpression_Condition(), this.getExpression(), null, "condition", null, 0, 1,
3008 AggregateExpression.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3009 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3010
3011 initEClass(countEClass, Count.class, "Count", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3012
3013 initEClass(aggregationEClass, Aggregation.class, "Aggregation", !IS_ABSTRACT, !IS_INTERFACE,
3014 IS_GENERATED_INSTANCE_CLASS);
3015 initEReference(getAggregation_Value(), this.getExpression(), null, "value", null, 0, 1, Aggregation.class,
3016 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3017 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3018 initEReference(getAggregation_Op(), this.getSymbol(), null, "op", null, 0, 1, Aggregation.class, !IS_TRANSIENT,
3019 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3020 IS_ORDERED);
3021
3022 initEClass(forallEClass, Forall.class, "Forall", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3023 initEReference(getForall_Body(), this.getExpression(), null, "body", null, 0, 1, Forall.class, !IS_TRANSIENT,
3024 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3025 IS_ORDERED);
3026
3027 initEClass(typeReferenceEClass, TypeReference.class, "TypeReference", !IS_ABSTRACT, !IS_INTERFACE,
3028 IS_GENERATED_INSTANCE_CLASS);
3029 initEAttribute(getTypeReference_ForceObjectType(), ecorePackage.getEBoolean(), "forceObjectType", null, 0, 1,
3030 TypeReference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3031 !IS_DERIVED, IS_ORDERED);
3032 initEReference(getTypeReference_Type(), this.getSymbol(), null, "type", null, 0, 1, TypeReference.class,
3033 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3034 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3035
3036 initEClass(infinityLiteralEClass, InfinityLiteral.class, "InfinityLiteral", !IS_ABSTRACT, !IS_INTERFACE,
3037 IS_GENERATED_INSTANCE_CLASS);
3038
3039 initEClass(intervalEClass, Interval.class, "Interval", !IS_ABSTRACT, !IS_INTERFACE,
3040 IS_GENERATED_INSTANCE_CLASS);
3041 initEReference(getInterval_LowerBound(), this.getExpression(), null, "lowerBound", null, 0, 1, Interval.class,
3042 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3043 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3044 initEReference(getInterval_UpperBound(), this.getExpression(), null, "upperBound", null, 0, 1, Interval.class,
3045 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3046 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3047
3048 initEClass(functorEClass, Functor.class, "Functor", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3049 initEReference(getFunctor_Parameters(), this.getVariable(), null, "parameters", null, 0, -1, Functor.class,
3050 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3051 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3052
3053 initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3054
3055 initEClass(baseRelationEClass, BaseRelation.class, "BaseRelation", !IS_ABSTRACT, !IS_INTERFACE,
3056 IS_GENERATED_INSTANCE_CLASS);
3057
3058 initEClass(predicateEClass, Predicate.class, "Predicate", !IS_ABSTRACT, !IS_INTERFACE,
3059 IS_GENERATED_INSTANCE_CLASS);
3060
3061 initEClass(datatypeEClass, Datatype.class, "Datatype", !IS_ABSTRACT, !IS_INTERFACE,
3062 IS_GENERATED_INSTANCE_CLASS);
3063
3064 initEClass(functionEClass, Function.class, "Function", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3065 initEReference(getFunction_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1, Function.class,
3066 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3067 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3068
3069 initEClass(metricEClass, Metric.class, "Metric", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3070
3071 initEClass(operatorEClass, Operator.class, "Operator", !IS_ABSTRACT, !IS_INTERFACE,
3072 IS_GENERATED_INSTANCE_CLASS);
3073
3074 initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3075 initEAttribute(getNode_Named(), ecorePackage.getEBoolean(), "named", null, 0, 1, Node.class, !IS_TRANSIENT,
3076 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3077
3078 initEClass(statementEClass, Statement.class, "Statement", IS_ABSTRACT, !IS_INTERFACE,
3079 IS_GENERATED_INSTANCE_CLASS);
3080
3081 initEClass(abstractAssertionEClass, AbstractAssertion.class, "AbstractAssertion", IS_ABSTRACT, !IS_INTERFACE,
3082 IS_GENERATED_INSTANCE_CLASS);
3083 initEReference(getAbstractAssertion_Expression(), this.getExpression(), null, "expression", null, 0, 1,
3084 AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3085 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3086 initEReference(getAbstractAssertion_Range(), this.getExpression(), null, "range", null, 0, 1,
3087 AbstractAssertion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3088 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3089
3090 initEClass(functorDefinitonEClass, FunctorDefiniton.class, "FunctorDefiniton", IS_ABSTRACT, !IS_INTERFACE,
3091 IS_GENERATED_INSTANCE_CLASS);
3092 initEReference(getFunctorDefiniton_Head(), this.getExpression(), null, "head", null, 0, 1,
3093 FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3094 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3095 initEReference(getFunctorDefiniton_Body(), this.getExpression(), null, "body", null, 0, 1,
3096 FunctorDefiniton.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3097 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3098
3099 initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT,
3100 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3101
3102 initEClass(functionDefinitionEClass, FunctionDefinition.class, "FunctionDefinition", !IS_ABSTRACT,
3103 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3104 initEReference(getFunctionDefinition_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1,
3105 FunctionDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3106 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3107
3108 initEClass(attributeEClass, Attribute.class, "Attribute", IS_ABSTRACT, !IS_INTERFACE,
3109 IS_GENERATED_INSTANCE_CLASS);
3110 initEReference(getAttribute_Target(), this.getSymbol(), null, "target", null, 0, 1, Attribute.class,
3111 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3112 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3113 initEAttribute(getAttribute_Kind(), this.getAttributeKind(), "kind", null, 0, 1, Attribute.class, !IS_TRANSIENT,
3114 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3115
3116 initEClass(externDeclarationEClass, ExternDeclaration.class, "ExternDeclaration", IS_ABSTRACT, !IS_INTERFACE,
3117 IS_GENERATED_INSTANCE_CLASS);
3118 initEAttribute(getExternDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3119 ExternDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3120 !IS_DERIVED, IS_ORDERED);
3121
3122 initEClass(externFunctorDeclarationEClass, ExternFunctorDeclaration.class, "ExternFunctorDeclaration",
3123 IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3124 initEReference(getExternFunctorDeclaration_ArgumentList(), this.getArgumentList(), null, "argumentList", null,
3125 0, 1, ExternFunctorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3126 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3127
3128 initEClass(externPredicateDeclarationEClass, ExternPredicateDeclaration.class, "ExternPredicateDeclaration",
3129 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3130
3131 initEClass(externFunctionDeclarationEClass, ExternFunctionDeclaration.class, "ExternFunctionDeclaration",
3132 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3133 initEReference(getExternFunctionDeclaration_ResultType(), this.getSymbol(), null, "resultType", null, 0, 1,
3134 ExternFunctionDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3135 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3136
3137 initEClass(externAggregationOperatorDeclarationEClass, ExternAggregationOperatorDeclaration.class,
3138 "ExternAggregationOperatorDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3139 initEReference(getExternAggregationOperatorDeclaration_ArgumentType(), this.getSymbol(), null, "argumentType",
3140 null, 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3141 !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3142 initEReference(getExternAggregationOperatorDeclaration_ResultType(), this.getSymbol(), null, "resultType", null,
3143 0, 1, ExternAggregationOperatorDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3144 !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3145
3146 initEClass(externDatatypeDeclarationEClass, ExternDatatypeDeclaration.class, "ExternDatatypeDeclaration",
3147 !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3148
3149 initEClass(classDeclarationEClass, ClassDeclaration.class, "ClassDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3150 IS_GENERATED_INSTANCE_CLASS);
3151 initEReference(getClassDeclaration_Fields(), this.getField(), null, "fields", null, 0, -1,
3152 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3153 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3154 initEAttribute(getClassDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3155 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3156 !IS_DERIVED, IS_ORDERED);
3157 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1,
3158 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3159 !IS_DERIVED, IS_ORDERED);
3160 initEReference(getClassDeclaration_Supertypes(), this.getSymbol(), null, "supertypes", null, 0, -1,
3161 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
3162 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3163 initEAttribute(getClassDeclaration_Root(), ecorePackage.getEBoolean(), "root", null, 0, 1,
3164 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3165 !IS_DERIVED, IS_ORDERED);
3166
3167 initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3168 IS_GENERATED_INSTANCE_CLASS);
3169 initEReference(getEnumDeclaration_Literals(), this.getEnumLiteral(), null, "literals", null, 0, -1,
3170 EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
3171 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3172 initEAttribute(getEnumDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumDeclaration.class,
3173 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3174
3175 initEClass(enumLiteralEClass, EnumLiteral.class, "EnumLiteral", !IS_ABSTRACT, !IS_INTERFACE,
3176 IS_GENERATED_INSTANCE_CLASS);
3177 initEAttribute(getEnumLiteral_Name(), ecorePackage.getEString(), "name", null, 0, 1, EnumLiteral.class,
3178 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3179
3180 initEClass(fieldEClass, Field.class, "Field", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3181 initEAttribute(getField_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1, Field.class,
3182 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3183 initEAttribute(getField_CrossReference(), ecorePackage.getEBoolean(), "crossReference", null, 0, 1, Field.class,
3184 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3185 initEReference(getField_Opposite(), this.getSymbol(), null, "opposite", null, 0, 1, Field.class, !IS_TRANSIENT,
3186 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3187 IS_ORDERED);
3188 initEReference(getField_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1, Field.class,
3189 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3190 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3191 initEReference(getField_Type(), this.getSymbol(), null, "type", null, 0, 1, Field.class, !IS_TRANSIENT,
3192 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
3193 IS_ORDERED);
3194 initEAttribute(getField_Name(), ecorePackage.getEString(), "name", null, 0, 1, Field.class, !IS_TRANSIENT,
3195 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3196
3197 initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", IS_ABSTRACT, !IS_INTERFACE,
3198 IS_GENERATED_INSTANCE_CLASS);
3199
3200 initEClass(defaultAssertionEClass, DefaultAssertion.class, "DefaultAssertion", !IS_ABSTRACT, !IS_INTERFACE,
3201 IS_GENERATED_INSTANCE_CLASS);
3202
3203 initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE,
3204 IS_GENERATED_INSTANCE_CLASS);
3205
3206 initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT,
3207 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3208
3209 initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
3210 IS_GENERATED_INSTANCE_CLASS);
3211 initEAttribute(getExactMultiplicity_Value(), ecorePackage.getEInt(), "value", null, 0, 1,
3212 ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3213 !IS_DERIVED, IS_ORDERED);
3214
3215 initEClass(boundedMultiplicityEClass, BoundedMultiplicity.class, "BoundedMultiplicity", !IS_ABSTRACT,
3216 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3217 initEAttribute(getBoundedMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3218 BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3219 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3220 initEAttribute(getBoundedMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1,
3221 BoundedMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3222 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3223
3224 initEClass(inlinePredicateAttrributesEClass, InlinePredicateAttrributes.class, "InlinePredicateAttrributes",
3225 IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3226 initEAttribute(getInlinePredicateAttrributes_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1,
3227 InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3228 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3229 initEAttribute(getInlinePredicateAttrributes_Functional(), ecorePackage.getEBoolean(), "functional", null, 0, 1,
3230 InlinePredicateAttrributes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3231 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3232
3233 initEClass(aggregationOperatorEClass, AggregationOperator.class, "AggregationOperator", !IS_ABSTRACT,
3234 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3235 initEReference(getAggregationOperator_ArgumentType(), this.getDatatype(), null, "argumentType", null, 0, 1,
3236 AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3237 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3238 initEReference(getAggregationOperator_ResultType(), this.getDatatype(), null, "resultType", null, 0, 1,
3239 AggregationOperator.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
3240 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3241
3242 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3243 initEAttribute(getProblem_Name(), ecorePackage.getEString(), "name", null, 0, 1, Problem.class, !IS_TRANSIENT,
3244 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3245 initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class,
3246 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3247 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3248 initEReference(getProblem_Symbols(), this.getSymbol(), null, "symbols", null, 0, -1, Problem.class,
3249 IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
3250 !IS_DERIVED, IS_ORDERED);
3251 initEReference(getProblem_Imports(), this.getImport(), null, "imports", null, 0, -1, Problem.class,
3252 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3253 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3254
3255 initEClass(typedStarArgumentEClass, TypedStarArgument.class, "TypedStarArgument", !IS_ABSTRACT, !IS_INTERFACE,
3256 IS_GENERATED_INSTANCE_CLASS);
3257
3258 initEClass(typedVariableArgumentEClass, TypedVariableArgument.class, "TypedVariableArgument", !IS_ABSTRACT,
3259 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3260 initEAttribute(getTypedVariableArgument_Name(), ecorePackage.getEString(), "name", null, 0, 1,
3261 TypedVariableArgument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3262 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3263
3264 initEClass(unnamedErrorPredicateDefintionEClass, UnnamedErrorPredicateDefintion.class,
3265 "UnnamedErrorPredicateDefintion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3266 initEReference(getUnnamedErrorPredicateDefintion_ArgumentList(), this.getArgumentList(), null, "argumentList",
3267 null, 0, 1, UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE,
3268 IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3269 initEReference(getUnnamedErrorPredicateDefintion_Body(), this.getExpression(), null, "body", null, 0, 1,
3270 UnnamedErrorPredicateDefintion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3271 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3272
3273 initEClass(objectiveDeclarationEClass, ObjectiveDeclaration.class, "ObjectiveDeclaration", !IS_ABSTRACT,
3274 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3275 initEAttribute(getObjectiveDeclaration_Kind(), this.getObjectiveKind(), "kind", null, 0, 1,
3276 ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
3277 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3278 initEReference(getObjectiveDeclaration_Objective(), this.getExpression(), null, "objective", null, 0, 1,
3279 ObjectiveDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
3280 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3281
3282 initEClass(scopeDeclarationEClass, ScopeDeclaration.class, "ScopeDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
3283 IS_GENERATED_INSTANCE_CLASS);
3284 initEReference(getScopeDeclaration_Type(), this.getSymbol(), null, "type", null, 0, 1, ScopeDeclaration.class,
3285 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
3286 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3287
3288 initEClass(exactScopeEClass, ExactScope.class, "ExactScope", !IS_ABSTRACT, !IS_INTERFACE,
3289 IS_GENERATED_INSTANCE_CLASS);
3290 initEAttribute(getExactScope_Size(), ecorePackage.getEInt(), "size", null, 0, 1, ExactScope.class,
3291 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3292
3293 initEClass(boundedScopeEClass, BoundedScope.class, "BoundedScope", !IS_ABSTRACT, !IS_INTERFACE,
3294 IS_GENERATED_INSTANCE_CLASS);
3295 initEAttribute(getBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3296 BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3297 !IS_DERIVED, IS_ORDERED);
3298 initEAttribute(getBoundedScope_UpperBound(), ecorePackage.getEInt(), "upperBound", null, 0, 1,
3299 BoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3300 !IS_DERIVED, IS_ORDERED);
3301
3302 initEClass(lowerBoundedScopeEClass, LowerBoundedScope.class, "LowerBoundedScope", !IS_ABSTRACT, !IS_INTERFACE,
3303 IS_GENERATED_INSTANCE_CLASS);
3304 initEAttribute(getLowerBoundedScope_LowerBound(), ecorePackage.getEInt(), "lowerBound", null, 0, 1,
3305 LowerBoundedScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3306 !IS_DERIVED, IS_ORDERED);
3307
3308 initEClass(namespaceImportEClass, NamespaceImport.class, "NamespaceImport", !IS_ABSTRACT, !IS_INTERFACE,
3309 IS_GENERATED_INSTANCE_CLASS);
3310 initEAttribute(getNamespaceImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0,
3311 1, NamespaceImport.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
3312 !IS_DERIVED, IS_ORDERED);
3313
3314 initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
3315 initEAttribute(getImport_Alias(), ecorePackage.getEString(), "alias", null, 0, 1, Import.class, !IS_TRANSIENT,
3316 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3317
3318 initEClass(uriImportEClass, UriImport.class, "UriImport", !IS_ABSTRACT, !IS_INTERFACE,
3319 IS_GENERATED_INSTANCE_CLASS);
3320 initEAttribute(getUriImport_Uri(), ecorePackage.getEString(), "uri", null, 0, 1, UriImport.class, !IS_TRANSIENT,
3321 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
3322
3323 // Initialize enums and add enum literals
3324 initEEnum(unaryOperatorEEnum, UnaryOperator.class, "UnaryOperator");
3325 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.NOT);
3326 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.PLUS);
3327 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MINUS);
3328 addEEnumLiteral(unaryOperatorEEnum, UnaryOperator.MAYBE);
3329
3330 initEEnum(binaryOperatorEEnum, BinaryOperator.class, "BinaryOperator");
3331 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.PLUS);
3332 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MINUS);
3333 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.MULTIPLY);
3334 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.DIVIDE);
3335 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.POW);
3336 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.IN);
3337 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.EQUALS);
3338 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.NOT_EQUALS);
3339 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS);
3340 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.LESS_EQUALS);
3341 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER);
3342 addEEnumLiteral(binaryOperatorEEnum, BinaryOperator.GREATER_EQUALS);
3343
3344 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue");
3345 addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN);
3346 addEEnumLiteral(logicValueEEnum, LogicValue.FALSE);
3347 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE);
3348 addEEnumLiteral(logicValueEEnum, LogicValue.ERROR);
3349
3350 initEEnum(objectiveKindEEnum, ObjectiveKind.class, "ObjectiveKind");
3351 addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MINIMIZATION);
3352 addEEnumLiteral(objectiveKindEEnum, ObjectiveKind.MAXIMIZATION);
3353
3354 initEEnum(attributeKindEEnum, AttributeKind.class, "AttributeKind");
3355 addEEnumLiteral(attributeKindEEnum, AttributeKind.FUNCTIONAL);
3356 addEEnumLiteral(attributeKindEEnum, AttributeKind.ERROR);
3357 addEEnumLiteral(attributeKindEEnum, AttributeKind.ROOT);
3358 addEEnumLiteral(attributeKindEEnum, AttributeKind.CONTAINMENT);
3359
3360 // Create resource
3361 createResource(eNS_URI);
3362 }
3363
3364} //SolverLanguagePackageImpl