aboutsummaryrefslogtreecommitdiffstats
path: root/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
diff options
context:
space:
mode:
Diffstat (limited to 'language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java')
-rw-r--r--language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java1206
1 files changed, 1206 insertions, 0 deletions
diff --git a/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
new file mode 100644
index 00000000..d10ff2f0
--- /dev/null
+++ b/language-model/src/main/emf-gen/org/eclipse/viatra/solver/language/model/problem/impl/ProblemPackageImpl.java
@@ -0,0 +1,1206 @@
1/**
2 */
3package org.eclipse.viatra.solver.language.model.problem.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.model.problem.Argument;
14import org.eclipse.viatra.solver.language.model.problem.Assertion;
15import org.eclipse.viatra.solver.language.model.problem.Atom;
16import org.eclipse.viatra.solver.language.model.problem.ClassDeclaration;
17import org.eclipse.viatra.solver.language.model.problem.Conjunction;
18import org.eclipse.viatra.solver.language.model.problem.EnumDeclaration;
19import org.eclipse.viatra.solver.language.model.problem.ExactMultiplicity;
20import org.eclipse.viatra.solver.language.model.problem.ExistentialQuantifier;
21import org.eclipse.viatra.solver.language.model.problem.ImplicitVariable;
22import org.eclipse.viatra.solver.language.model.problem.Literal;
23import org.eclipse.viatra.solver.language.model.problem.LogicValue;
24import org.eclipse.viatra.solver.language.model.problem.Multiplicity;
25import org.eclipse.viatra.solver.language.model.problem.NamedElement;
26import org.eclipse.viatra.solver.language.model.problem.NegativeLiteral;
27import org.eclipse.viatra.solver.language.model.problem.Node;
28import org.eclipse.viatra.solver.language.model.problem.Parameter;
29import org.eclipse.viatra.solver.language.model.problem.PredicateDefinition;
30import org.eclipse.viatra.solver.language.model.problem.Problem;
31import org.eclipse.viatra.solver.language.model.problem.ProblemFactory;
32import org.eclipse.viatra.solver.language.model.problem.ProblemPackage;
33import org.eclipse.viatra.solver.language.model.problem.RangeMultiplicity;
34import org.eclipse.viatra.solver.language.model.problem.ReferenceDeclaration;
35import org.eclipse.viatra.solver.language.model.problem.Relation;
36import org.eclipse.viatra.solver.language.model.problem.ScopeDeclaration;
37import org.eclipse.viatra.solver.language.model.problem.Statement;
38import org.eclipse.viatra.solver.language.model.problem.TypeScope;
39import org.eclipse.viatra.solver.language.model.problem.UnboundedMultiplicity;
40import org.eclipse.viatra.solver.language.model.problem.Variable;
41import org.eclipse.viatra.solver.language.model.problem.VariableOrNode;
42
43/**
44 * <!-- begin-user-doc -->
45 * An implementation of the model <b>Package</b>.
46 * <!-- end-user-doc -->
47 * @generated
48 */
49public class ProblemPackageImpl extends EPackageImpl implements ProblemPackage {
50 /**
51 * <!-- begin-user-doc -->
52 * <!-- end-user-doc -->
53 * @generated
54 */
55 private EClass problemEClass = null;
56
57 /**
58 * <!-- begin-user-doc -->
59 * <!-- end-user-doc -->
60 * @generated
61 */
62 private EClass relationEClass = null;
63
64 /**
65 * <!-- begin-user-doc -->
66 * <!-- end-user-doc -->
67 * @generated
68 */
69 private EClass classDeclarationEClass = null;
70
71 /**
72 * <!-- begin-user-doc -->
73 * <!-- end-user-doc -->
74 * @generated
75 */
76 private EClass referenceDeclarationEClass = null;
77
78 /**
79 * <!-- begin-user-doc -->
80 * <!-- end-user-doc -->
81 * @generated
82 */
83 private EClass namedElementEClass = null;
84
85 /**
86 * <!-- begin-user-doc -->
87 * <!-- end-user-doc -->
88 * @generated
89 */
90 private EClass predicateDefinitionEClass = null;
91
92 /**
93 * <!-- begin-user-doc -->
94 * <!-- end-user-doc -->
95 * @generated
96 */
97 private EClass parameterEClass = null;
98
99 /**
100 * <!-- begin-user-doc -->
101 * <!-- end-user-doc -->
102 * @generated
103 */
104 private EClass variableEClass = null;
105
106 /**
107 * <!-- begin-user-doc -->
108 * <!-- end-user-doc -->
109 * @generated
110 */
111 private EClass conjunctionEClass = null;
112
113 /**
114 * <!-- begin-user-doc -->
115 * <!-- end-user-doc -->
116 * @generated
117 */
118 private EClass literalEClass = null;
119
120 /**
121 * <!-- begin-user-doc -->
122 * <!-- end-user-doc -->
123 * @generated
124 */
125 private EClass atomEClass = null;
126
127 /**
128 * <!-- begin-user-doc -->
129 * <!-- end-user-doc -->
130 * @generated
131 */
132 private EClass implicitVariableEClass = null;
133
134 /**
135 * <!-- begin-user-doc -->
136 * <!-- end-user-doc -->
137 * @generated
138 */
139 private EClass negativeLiteralEClass = null;
140
141 /**
142 * <!-- begin-user-doc -->
143 * <!-- end-user-doc -->
144 * @generated
145 */
146 private EClass existentialQuantifierEClass = null;
147
148 /**
149 * <!-- begin-user-doc -->
150 * <!-- end-user-doc -->
151 * @generated
152 */
153 private EClass assertionEClass = null;
154
155 /**
156 * <!-- begin-user-doc -->
157 * <!-- end-user-doc -->
158 * @generated
159 */
160 private EClass nodeEClass = null;
161
162 /**
163 * <!-- begin-user-doc -->
164 * <!-- end-user-doc -->
165 * @generated
166 */
167 private EClass scopeDeclarationEClass = null;
168
169 /**
170 * <!-- begin-user-doc -->
171 * <!-- end-user-doc -->
172 * @generated
173 */
174 private EClass statementEClass = null;
175
176 /**
177 * <!-- begin-user-doc -->
178 * <!-- end-user-doc -->
179 * @generated
180 */
181 private EClass typeScopeEClass = null;
182
183 /**
184 * <!-- begin-user-doc -->
185 * <!-- end-user-doc -->
186 * @generated
187 */
188 private EClass multiplicityEClass = null;
189
190 /**
191 * <!-- begin-user-doc -->
192 * <!-- end-user-doc -->
193 * @generated
194 */
195 private EClass rangeMultiplicityEClass = null;
196
197 /**
198 * <!-- begin-user-doc -->
199 * <!-- end-user-doc -->
200 * @generated
201 */
202 private EClass exactMultiplicityEClass = null;
203
204 /**
205 * <!-- begin-user-doc -->
206 * <!-- end-user-doc -->
207 * @generated
208 */
209 private EClass unboundedMultiplicityEClass = null;
210
211 /**
212 * <!-- begin-user-doc -->
213 * <!-- end-user-doc -->
214 * @generated
215 */
216 private EClass argumentEClass = null;
217
218 /**
219 * <!-- begin-user-doc -->
220 * <!-- end-user-doc -->
221 * @generated
222 */
223 private EClass enumDeclarationEClass = null;
224
225 /**
226 * <!-- begin-user-doc -->
227 * <!-- end-user-doc -->
228 * @generated
229 */
230 private EClass variableOrNodeEClass = null;
231
232 /**
233 * <!-- begin-user-doc -->
234 * <!-- end-user-doc -->
235 * @generated
236 */
237 private EEnum logicValueEEnum = null;
238
239 /**
240 * Creates an instance of the model <b>Package</b>, registered with
241 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
242 * package URI value.
243 * <p>Note: the correct way to create the package is via the static
244 * factory method {@link #init init()}, which also performs
245 * initialization of the package, or returns the registered package,
246 * if one already exists.
247 * <!-- begin-user-doc -->
248 * <!-- end-user-doc -->
249 * @see org.eclipse.emf.ecore.EPackage.Registry
250 * @see org.eclipse.viatra.solver.language.model.problem.ProblemPackage#eNS_URI
251 * @see #init()
252 * @generated
253 */
254 private ProblemPackageImpl() {
255 super(eNS_URI, ProblemFactory.eINSTANCE);
256 }
257
258 /**
259 * <!-- begin-user-doc -->
260 * <!-- end-user-doc -->
261 * @generated
262 */
263 private static boolean isInited = false;
264
265 /**
266 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
267 *
268 * <p>This method is used to initialize {@link ProblemPackage#eINSTANCE} when that field is accessed.
269 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
270 * <!-- begin-user-doc -->
271 * <!-- end-user-doc -->
272 * @see #eNS_URI
273 * @see #createPackageContents()
274 * @see #initializePackageContents()
275 * @generated
276 */
277 public static ProblemPackage init() {
278 if (isInited)
279 return (ProblemPackage) EPackage.Registry.INSTANCE.getEPackage(ProblemPackage.eNS_URI);
280
281 // Obtain or create and register package
282 Object registeredProblemPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
283 ProblemPackageImpl theProblemPackage = registeredProblemPackage instanceof ProblemPackageImpl
284 ? (ProblemPackageImpl) registeredProblemPackage
285 : new ProblemPackageImpl();
286
287 isInited = true;
288
289 // Create package meta-data objects
290 theProblemPackage.createPackageContents();
291
292 // Initialize created meta-data
293 theProblemPackage.initializePackageContents();
294
295 // Mark meta-data to indicate it can't be changed
296 theProblemPackage.freeze();
297
298 // Update the registry and return the package
299 EPackage.Registry.INSTANCE.put(ProblemPackage.eNS_URI, theProblemPackage);
300 return theProblemPackage;
301 }
302
303 /**
304 * <!-- begin-user-doc -->
305 * <!-- end-user-doc -->
306 * @generated
307 */
308 public EClass getProblem() {
309 return problemEClass;
310 }
311
312 /**
313 * <!-- begin-user-doc -->
314 * <!-- end-user-doc -->
315 * @generated
316 */
317 public EReference getProblem_Nodes() {
318 return (EReference) problemEClass.getEStructuralFeatures().get(0);
319 }
320
321 /**
322 * <!-- begin-user-doc -->
323 * <!-- end-user-doc -->
324 * @generated
325 */
326 public EReference getProblem_Statements() {
327 return (EReference) problemEClass.getEStructuralFeatures().get(1);
328 }
329
330 /**
331 * <!-- begin-user-doc -->
332 * <!-- end-user-doc -->
333 * @generated
334 */
335 public EClass getRelation() {
336 return relationEClass;
337 }
338
339 /**
340 * <!-- begin-user-doc -->
341 * <!-- end-user-doc -->
342 * @generated
343 */
344 public EClass getClassDeclaration() {
345 return classDeclarationEClass;
346 }
347
348 /**
349 * <!-- begin-user-doc -->
350 * <!-- end-user-doc -->
351 * @generated
352 */
353 public EAttribute getClassDeclaration_Abstract() {
354 return (EAttribute) classDeclarationEClass.getEStructuralFeatures().get(0);
355 }
356
357 /**
358 * <!-- begin-user-doc -->
359 * <!-- end-user-doc -->
360 * @generated
361 */
362 public EReference getClassDeclaration_SuperTypes() {
363 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(1);
364 }
365
366 /**
367 * <!-- begin-user-doc -->
368 * <!-- end-user-doc -->
369 * @generated
370 */
371 public EReference getClassDeclaration_ReferenceDeclarations() {
372 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(2);
373 }
374
375 /**
376 * <!-- begin-user-doc -->
377 * <!-- end-user-doc -->
378 * @generated
379 */
380 public EReference getClassDeclaration_NewNode() {
381 return (EReference) classDeclarationEClass.getEStructuralFeatures().get(3);
382 }
383
384 /**
385 * <!-- begin-user-doc -->
386 * <!-- end-user-doc -->
387 * @generated
388 */
389 public EClass getReferenceDeclaration() {
390 return referenceDeclarationEClass;
391 }
392
393 /**
394 * <!-- begin-user-doc -->
395 * <!-- end-user-doc -->
396 * @generated
397 */
398 public EReference getReferenceDeclaration_ReferenceType() {
399 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(0);
400 }
401
402 /**
403 * <!-- begin-user-doc -->
404 * <!-- end-user-doc -->
405 * @generated
406 */
407 public EReference getReferenceDeclaration_Opposite() {
408 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(1);
409 }
410
411 /**
412 * <!-- begin-user-doc -->
413 * <!-- end-user-doc -->
414 * @generated
415 */
416 public EAttribute getReferenceDeclaration_Containment() {
417 return (EAttribute) referenceDeclarationEClass.getEStructuralFeatures().get(2);
418 }
419
420 /**
421 * <!-- begin-user-doc -->
422 * <!-- end-user-doc -->
423 * @generated
424 */
425 public EReference getReferenceDeclaration_Multiplicity() {
426 return (EReference) referenceDeclarationEClass.getEStructuralFeatures().get(3);
427 }
428
429 /**
430 * <!-- begin-user-doc -->
431 * <!-- end-user-doc -->
432 * @generated
433 */
434 public EClass getNamedElement() {
435 return namedElementEClass;
436 }
437
438 /**
439 * <!-- begin-user-doc -->
440 * <!-- end-user-doc -->
441 * @generated
442 */
443 public EAttribute getNamedElement_Name() {
444 return (EAttribute) namedElementEClass.getEStructuralFeatures().get(0);
445 }
446
447 /**
448 * <!-- begin-user-doc -->
449 * <!-- end-user-doc -->
450 * @generated
451 */
452 public EClass getPredicateDefinition() {
453 return predicateDefinitionEClass;
454 }
455
456 /**
457 * <!-- begin-user-doc -->
458 * <!-- end-user-doc -->
459 * @generated
460 */
461 public EAttribute getPredicateDefinition_Error() {
462 return (EAttribute) predicateDefinitionEClass.getEStructuralFeatures().get(0);
463 }
464
465 /**
466 * <!-- begin-user-doc -->
467 * <!-- end-user-doc -->
468 * @generated
469 */
470 public EReference getPredicateDefinition_Parameters() {
471 return (EReference) predicateDefinitionEClass.getEStructuralFeatures().get(1);
472 }
473
474 /**
475 * <!-- begin-user-doc -->
476 * <!-- end-user-doc -->
477 * @generated
478 */
479 public EReference getPredicateDefinition_Bodies() {
480 return (EReference) predicateDefinitionEClass.getEStructuralFeatures().get(2);
481 }
482
483 /**
484 * <!-- begin-user-doc -->
485 * <!-- end-user-doc -->
486 * @generated
487 */
488 public EClass getParameter() {
489 return parameterEClass;
490 }
491
492 /**
493 * <!-- begin-user-doc -->
494 * <!-- end-user-doc -->
495 * @generated
496 */
497 public EReference getParameter_ParameterType() {
498 return (EReference) parameterEClass.getEStructuralFeatures().get(0);
499 }
500
501 /**
502 * <!-- begin-user-doc -->
503 * <!-- end-user-doc -->
504 * @generated
505 */
506 public EClass getVariable() {
507 return variableEClass;
508 }
509
510 /**
511 * <!-- begin-user-doc -->
512 * <!-- end-user-doc -->
513 * @generated
514 */
515 public EClass getConjunction() {
516 return conjunctionEClass;
517 }
518
519 /**
520 * <!-- begin-user-doc -->
521 * <!-- end-user-doc -->
522 * @generated
523 */
524 public EReference getConjunction_Literals() {
525 return (EReference) conjunctionEClass.getEStructuralFeatures().get(0);
526 }
527
528 /**
529 * <!-- begin-user-doc -->
530 * <!-- end-user-doc -->
531 * @generated
532 */
533 public EClass getLiteral() {
534 return literalEClass;
535 }
536
537 /**
538 * <!-- begin-user-doc -->
539 * <!-- end-user-doc -->
540 * @generated
541 */
542 public EClass getAtom() {
543 return atomEClass;
544 }
545
546 /**
547 * <!-- begin-user-doc -->
548 * <!-- end-user-doc -->
549 * @generated
550 */
551 public EReference getAtom_Relation() {
552 return (EReference) atomEClass.getEStructuralFeatures().get(0);
553 }
554
555 /**
556 * <!-- begin-user-doc -->
557 * <!-- end-user-doc -->
558 * @generated
559 */
560 public EReference getAtom_Arguments() {
561 return (EReference) atomEClass.getEStructuralFeatures().get(2);
562 }
563
564 /**
565 * <!-- begin-user-doc -->
566 * <!-- end-user-doc -->
567 * @generated
568 */
569 public EAttribute getAtom_TransitiveClosure() {
570 return (EAttribute) atomEClass.getEStructuralFeatures().get(1);
571 }
572
573 /**
574 * <!-- begin-user-doc -->
575 * <!-- end-user-doc -->
576 * @generated
577 */
578 public EClass getImplicitVariable() {
579 return implicitVariableEClass;
580 }
581
582 /**
583 * <!-- begin-user-doc -->
584 * <!-- end-user-doc -->
585 * @generated
586 */
587 public EClass getNegativeLiteral() {
588 return negativeLiteralEClass;
589 }
590
591 /**
592 * <!-- begin-user-doc -->
593 * <!-- end-user-doc -->
594 * @generated
595 */
596 public EReference getNegativeLiteral_Atom() {
597 return (EReference) negativeLiteralEClass.getEStructuralFeatures().get(0);
598 }
599
600 /**
601 * <!-- begin-user-doc -->
602 * <!-- end-user-doc -->
603 * @generated
604 */
605 public EClass getExistentialQuantifier() {
606 return existentialQuantifierEClass;
607 }
608
609 /**
610 * <!-- begin-user-doc -->
611 * <!-- end-user-doc -->
612 * @generated
613 */
614 public EReference getExistentialQuantifier_ImplicitVariables() {
615 return (EReference) existentialQuantifierEClass.getEStructuralFeatures().get(0);
616 }
617
618 /**
619 * <!-- begin-user-doc -->
620 * <!-- end-user-doc -->
621 * @generated
622 */
623 public EClass getAssertion() {
624 return assertionEClass;
625 }
626
627 /**
628 * <!-- begin-user-doc -->
629 * <!-- end-user-doc -->
630 * @generated
631 */
632 public EReference getAssertion_Relation() {
633 return (EReference) assertionEClass.getEStructuralFeatures().get(0);
634 }
635
636 /**
637 * <!-- begin-user-doc -->
638 * <!-- end-user-doc -->
639 * @generated
640 */
641 public EReference getAssertion_Arguments() {
642 return (EReference) assertionEClass.getEStructuralFeatures().get(1);
643 }
644
645 /**
646 * <!-- begin-user-doc -->
647 * <!-- end-user-doc -->
648 * @generated
649 */
650 public EAttribute getAssertion_Value() {
651 return (EAttribute) assertionEClass.getEStructuralFeatures().get(2);
652 }
653
654 /**
655 * <!-- begin-user-doc -->
656 * <!-- end-user-doc -->
657 * @generated
658 */
659 public EClass getNode() {
660 return nodeEClass;
661 }
662
663 /**
664 * <!-- begin-user-doc -->
665 * <!-- end-user-doc -->
666 * @generated
667 */
668 public EClass getScopeDeclaration() {
669 return scopeDeclarationEClass;
670 }
671
672 /**
673 * <!-- begin-user-doc -->
674 * <!-- end-user-doc -->
675 * @generated
676 */
677 public EReference getScopeDeclaration_TypeScopes() {
678 return (EReference) scopeDeclarationEClass.getEStructuralFeatures().get(0);
679 }
680
681 /**
682 * <!-- begin-user-doc -->
683 * <!-- end-user-doc -->
684 * @generated
685 */
686 public EClass getStatement() {
687 return statementEClass;
688 }
689
690 /**
691 * <!-- begin-user-doc -->
692 * <!-- end-user-doc -->
693 * @generated
694 */
695 public EClass getTypeScope() {
696 return typeScopeEClass;
697 }
698
699 /**
700 * <!-- begin-user-doc -->
701 * <!-- end-user-doc -->
702 * @generated
703 */
704 public EReference getTypeScope_TargetType() {
705 return (EReference) typeScopeEClass.getEStructuralFeatures().get(0);
706 }
707
708 /**
709 * <!-- begin-user-doc -->
710 * <!-- end-user-doc -->
711 * @generated
712 */
713 public EAttribute getTypeScope_Increment() {
714 return (EAttribute) typeScopeEClass.getEStructuralFeatures().get(1);
715 }
716
717 /**
718 * <!-- begin-user-doc -->
719 * <!-- end-user-doc -->
720 * @generated
721 */
722 public EReference getTypeScope_Multiplicity() {
723 return (EReference) typeScopeEClass.getEStructuralFeatures().get(2);
724 }
725
726 /**
727 * <!-- begin-user-doc -->
728 * <!-- end-user-doc -->
729 * @generated
730 */
731 public EClass getMultiplicity() {
732 return multiplicityEClass;
733 }
734
735 /**
736 * <!-- begin-user-doc -->
737 * <!-- end-user-doc -->
738 * @generated
739 */
740 public EClass getRangeMultiplicity() {
741 return rangeMultiplicityEClass;
742 }
743
744 /**
745 * <!-- begin-user-doc -->
746 * <!-- end-user-doc -->
747 * @generated
748 */
749 public EAttribute getRangeMultiplicity_LowerBound() {
750 return (EAttribute) rangeMultiplicityEClass.getEStructuralFeatures().get(0);
751 }
752
753 /**
754 * <!-- begin-user-doc -->
755 * <!-- end-user-doc -->
756 * @generated
757 */
758 public EAttribute getRangeMultiplicity_UpperBound() {
759 return (EAttribute) rangeMultiplicityEClass.getEStructuralFeatures().get(1);
760 }
761
762 /**
763 * <!-- begin-user-doc -->
764 * <!-- end-user-doc -->
765 * @generated
766 */
767 public EClass getExactMultiplicity() {
768 return exactMultiplicityEClass;
769 }
770
771 /**
772 * <!-- begin-user-doc -->
773 * <!-- end-user-doc -->
774 * @generated
775 */
776 public EAttribute getExactMultiplicity_ExactValue() {
777 return (EAttribute) exactMultiplicityEClass.getEStructuralFeatures().get(0);
778 }
779
780 /**
781 * <!-- begin-user-doc -->
782 * <!-- end-user-doc -->
783 * @generated
784 */
785 public EClass getUnboundedMultiplicity() {
786 return unboundedMultiplicityEClass;
787 }
788
789 /**
790 * <!-- begin-user-doc -->
791 * <!-- end-user-doc -->
792 * @generated
793 */
794 public EClass getArgument() {
795 return argumentEClass;
796 }
797
798 /**
799 * <!-- begin-user-doc -->
800 * <!-- end-user-doc -->
801 * @generated
802 */
803 public EReference getArgument_VariableOrNode() {
804 return (EReference) argumentEClass.getEStructuralFeatures().get(0);
805 }
806
807 /**
808 * <!-- begin-user-doc -->
809 * <!-- end-user-doc -->
810 * @generated
811 */
812 public EReference getArgument_SingletonVariable() {
813 return (EReference) argumentEClass.getEStructuralFeatures().get(1);
814 }
815
816 /**
817 * <!-- begin-user-doc -->
818 * <!-- end-user-doc -->
819 * @generated
820 */
821 public EClass getEnumDeclaration() {
822 return enumDeclarationEClass;
823 }
824
825 /**
826 * <!-- begin-user-doc -->
827 * <!-- end-user-doc -->
828 * @generated
829 */
830 public EReference getEnumDeclaration_Literals() {
831 return (EReference) enumDeclarationEClass.getEStructuralFeatures().get(0);
832 }
833
834 /**
835 * <!-- begin-user-doc -->
836 * <!-- end-user-doc -->
837 * @generated
838 */
839 public EClass getVariableOrNode() {
840 return variableOrNodeEClass;
841 }
842
843 /**
844 * <!-- begin-user-doc -->
845 * <!-- end-user-doc -->
846 * @generated
847 */
848 public EEnum getLogicValue() {
849 return logicValueEEnum;
850 }
851
852 /**
853 * <!-- begin-user-doc -->
854 * <!-- end-user-doc -->
855 * @generated
856 */
857 public ProblemFactory getProblemFactory() {
858 return (ProblemFactory) getEFactoryInstance();
859 }
860
861 /**
862 * <!-- begin-user-doc -->
863 * <!-- end-user-doc -->
864 * @generated
865 */
866 private boolean isCreated = false;
867
868 /**
869 * Creates the meta-model objects for the package. This method is
870 * guarded to have no affect on any invocation but its first.
871 * <!-- begin-user-doc -->
872 * <!-- end-user-doc -->
873 * @generated
874 */
875 public void createPackageContents() {
876 if (isCreated)
877 return;
878 isCreated = true;
879
880 // Create classes and their features
881 problemEClass = createEClass(PROBLEM);
882 createEReference(problemEClass, PROBLEM__NODES);
883 createEReference(problemEClass, PROBLEM__STATEMENTS);
884
885 relationEClass = createEClass(RELATION);
886
887 classDeclarationEClass = createEClass(CLASS_DECLARATION);
888 createEAttribute(classDeclarationEClass, CLASS_DECLARATION__ABSTRACT);
889 createEReference(classDeclarationEClass, CLASS_DECLARATION__SUPER_TYPES);
890 createEReference(classDeclarationEClass, CLASS_DECLARATION__REFERENCE_DECLARATIONS);
891 createEReference(classDeclarationEClass, CLASS_DECLARATION__NEW_NODE);
892
893 referenceDeclarationEClass = createEClass(REFERENCE_DECLARATION);
894 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__REFERENCE_TYPE);
895 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__OPPOSITE);
896 createEAttribute(referenceDeclarationEClass, REFERENCE_DECLARATION__CONTAINMENT);
897 createEReference(referenceDeclarationEClass, REFERENCE_DECLARATION__MULTIPLICITY);
898
899 namedElementEClass = createEClass(NAMED_ELEMENT);
900 createEAttribute(namedElementEClass, NAMED_ELEMENT__NAME);
901
902 predicateDefinitionEClass = createEClass(PREDICATE_DEFINITION);
903 createEAttribute(predicateDefinitionEClass, PREDICATE_DEFINITION__ERROR);
904 createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__PARAMETERS);
905 createEReference(predicateDefinitionEClass, PREDICATE_DEFINITION__BODIES);
906
907 parameterEClass = createEClass(PARAMETER);
908 createEReference(parameterEClass, PARAMETER__PARAMETER_TYPE);
909
910 variableEClass = createEClass(VARIABLE);
911
912 conjunctionEClass = createEClass(CONJUNCTION);
913 createEReference(conjunctionEClass, CONJUNCTION__LITERALS);
914
915 literalEClass = createEClass(LITERAL);
916
917 atomEClass = createEClass(ATOM);
918 createEReference(atomEClass, ATOM__RELATION);
919 createEAttribute(atomEClass, ATOM__TRANSITIVE_CLOSURE);
920 createEReference(atomEClass, ATOM__ARGUMENTS);
921
922 implicitVariableEClass = createEClass(IMPLICIT_VARIABLE);
923
924 negativeLiteralEClass = createEClass(NEGATIVE_LITERAL);
925 createEReference(negativeLiteralEClass, NEGATIVE_LITERAL__ATOM);
926
927 existentialQuantifierEClass = createEClass(EXISTENTIAL_QUANTIFIER);
928 createEReference(existentialQuantifierEClass, EXISTENTIAL_QUANTIFIER__IMPLICIT_VARIABLES);
929
930 assertionEClass = createEClass(ASSERTION);
931 createEReference(assertionEClass, ASSERTION__RELATION);
932 createEReference(assertionEClass, ASSERTION__ARGUMENTS);
933 createEAttribute(assertionEClass, ASSERTION__VALUE);
934
935 nodeEClass = createEClass(NODE);
936
937 scopeDeclarationEClass = createEClass(SCOPE_DECLARATION);
938 createEReference(scopeDeclarationEClass, SCOPE_DECLARATION__TYPE_SCOPES);
939
940 statementEClass = createEClass(STATEMENT);
941
942 typeScopeEClass = createEClass(TYPE_SCOPE);
943 createEReference(typeScopeEClass, TYPE_SCOPE__TARGET_TYPE);
944 createEAttribute(typeScopeEClass, TYPE_SCOPE__INCREMENT);
945 createEReference(typeScopeEClass, TYPE_SCOPE__MULTIPLICITY);
946
947 multiplicityEClass = createEClass(MULTIPLICITY);
948
949 rangeMultiplicityEClass = createEClass(RANGE_MULTIPLICITY);
950 createEAttribute(rangeMultiplicityEClass, RANGE_MULTIPLICITY__LOWER_BOUND);
951 createEAttribute(rangeMultiplicityEClass, RANGE_MULTIPLICITY__UPPER_BOUND);
952
953 exactMultiplicityEClass = createEClass(EXACT_MULTIPLICITY);
954 createEAttribute(exactMultiplicityEClass, EXACT_MULTIPLICITY__EXACT_VALUE);
955
956 unboundedMultiplicityEClass = createEClass(UNBOUNDED_MULTIPLICITY);
957
958 argumentEClass = createEClass(ARGUMENT);
959 createEReference(argumentEClass, ARGUMENT__VARIABLE_OR_NODE);
960 createEReference(argumentEClass, ARGUMENT__SINGLETON_VARIABLE);
961
962 enumDeclarationEClass = createEClass(ENUM_DECLARATION);
963 createEReference(enumDeclarationEClass, ENUM_DECLARATION__LITERALS);
964
965 variableOrNodeEClass = createEClass(VARIABLE_OR_NODE);
966
967 // Create enums
968 logicValueEEnum = createEEnum(LOGIC_VALUE);
969 }
970
971 /**
972 * <!-- begin-user-doc -->
973 * <!-- end-user-doc -->
974 * @generated
975 */
976 private boolean isInitialized = false;
977
978 /**
979 * Complete the initialization of the package and its meta-model. This
980 * method is guarded to have no affect on any invocation but its first.
981 * <!-- begin-user-doc -->
982 * <!-- end-user-doc -->
983 * @generated
984 */
985 public void initializePackageContents() {
986 if (isInitialized)
987 return;
988 isInitialized = true;
989
990 // Initialize package
991 setName(eNAME);
992 setNsPrefix(eNS_PREFIX);
993 setNsURI(eNS_URI);
994
995 // Create type parameters
996
997 // Set bounds for type parameters
998
999 // Add supertypes to classes
1000 problemEClass.getESuperTypes().add(this.getNamedElement());
1001 relationEClass.getESuperTypes().add(this.getNamedElement());
1002 classDeclarationEClass.getESuperTypes().add(this.getRelation());
1003 classDeclarationEClass.getESuperTypes().add(this.getStatement());
1004 referenceDeclarationEClass.getESuperTypes().add(this.getRelation());
1005 predicateDefinitionEClass.getESuperTypes().add(this.getRelation());
1006 predicateDefinitionEClass.getESuperTypes().add(this.getStatement());
1007 parameterEClass.getESuperTypes().add(this.getVariable());
1008 variableEClass.getESuperTypes().add(this.getVariableOrNode());
1009 conjunctionEClass.getESuperTypes().add(this.getExistentialQuantifier());
1010 atomEClass.getESuperTypes().add(this.getLiteral());
1011 implicitVariableEClass.getESuperTypes().add(this.getVariable());
1012 negativeLiteralEClass.getESuperTypes().add(this.getExistentialQuantifier());
1013 negativeLiteralEClass.getESuperTypes().add(this.getLiteral());
1014 assertionEClass.getESuperTypes().add(this.getStatement());
1015 nodeEClass.getESuperTypes().add(this.getVariableOrNode());
1016 scopeDeclarationEClass.getESuperTypes().add(this.getStatement());
1017 rangeMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1018 exactMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1019 unboundedMultiplicityEClass.getESuperTypes().add(this.getMultiplicity());
1020 enumDeclarationEClass.getESuperTypes().add(this.getRelation());
1021 enumDeclarationEClass.getESuperTypes().add(this.getStatement());
1022 variableOrNodeEClass.getESuperTypes().add(this.getNamedElement());
1023
1024 // Initialize classes, features, and operations; add parameters
1025 initEClass(problemEClass, Problem.class, "Problem", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1026 initEReference(getProblem_Nodes(), this.getNode(), null, "nodes", null, 0, -1, Problem.class, !IS_TRANSIENT,
1027 !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
1028 IS_ORDERED);
1029 initEReference(getProblem_Statements(), this.getStatement(), null, "statements", null, 0, -1, Problem.class,
1030 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1031 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1032
1033 initEClass(relationEClass, Relation.class, "Relation", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1034
1035 initEClass(classDeclarationEClass, ClassDeclaration.class, "ClassDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1036 IS_GENERATED_INSTANCE_CLASS);
1037 initEAttribute(getClassDeclaration_Abstract(), ecorePackage.getEBoolean(), "abstract", null, 0, 1,
1038 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1039 !IS_DERIVED, IS_ORDERED);
1040 initEReference(getClassDeclaration_SuperTypes(), this.getRelation(), null, "superTypes", null, 0, -1,
1041 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1042 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1043 initEReference(getClassDeclaration_ReferenceDeclarations(), this.getReferenceDeclaration(), null,
1044 "referenceDeclarations", null, 0, -1, ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE,
1045 IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1046 initEReference(getClassDeclaration_NewNode(), this.getNode(), null, "newNode", null, 0, 1,
1047 ClassDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1048 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1049
1050 initEClass(referenceDeclarationEClass, ReferenceDeclaration.class, "ReferenceDeclaration", !IS_ABSTRACT,
1051 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1052 initEReference(getReferenceDeclaration_ReferenceType(), this.getRelation(), null, "referenceType", null, 0, 1,
1053 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1054 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1055 initEReference(getReferenceDeclaration_Opposite(), this.getReferenceDeclaration(), null, "opposite", null, 0, 1,
1056 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE,
1057 IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1058 initEAttribute(getReferenceDeclaration_Containment(), ecorePackage.getEBoolean(), "containment", null, 0, 1,
1059 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
1060 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1061 initEReference(getReferenceDeclaration_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1,
1062 ReferenceDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1063 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1064
1065 initEClass(namedElementEClass, NamedElement.class, "NamedElement", IS_ABSTRACT, !IS_INTERFACE,
1066 IS_GENERATED_INSTANCE_CLASS);
1067 initEAttribute(getNamedElement_Name(), ecorePackage.getEString(), "name", null, 0, 1, NamedElement.class,
1068 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1069
1070 initEClass(predicateDefinitionEClass, PredicateDefinition.class, "PredicateDefinition", !IS_ABSTRACT,
1071 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1072 initEAttribute(getPredicateDefinition_Error(), ecorePackage.getEBoolean(), "error", null, 0, 1,
1073 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
1074 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1075 initEReference(getPredicateDefinition_Parameters(), this.getParameter(), null, "parameters", null, 0, -1,
1076 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1077 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1078 initEReference(getPredicateDefinition_Bodies(), this.getConjunction(), null, "bodies", null, 0, -1,
1079 PredicateDefinition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE,
1080 !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1081
1082 initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE,
1083 IS_GENERATED_INSTANCE_CLASS);
1084 initEReference(getParameter_ParameterType(), this.getRelation(), null, "parameterType", null, 0, 1,
1085 Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1086 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1087
1088 initEClass(variableEClass, Variable.class, "Variable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1089
1090 initEClass(conjunctionEClass, Conjunction.class, "Conjunction", !IS_ABSTRACT, !IS_INTERFACE,
1091 IS_GENERATED_INSTANCE_CLASS);
1092 initEReference(getConjunction_Literals(), this.getLiteral(), null, "literals", null, 0, -1, Conjunction.class,
1093 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1094 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1095
1096 initEClass(literalEClass, Literal.class, "Literal", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1097
1098 initEClass(atomEClass, Atom.class, "Atom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1099 initEReference(getAtom_Relation(), this.getRelation(), null, "relation", null, 0, 1, Atom.class, !IS_TRANSIENT,
1100 !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
1101 IS_ORDERED);
1102 initEAttribute(getAtom_TransitiveClosure(), ecorePackage.getEBoolean(), "transitiveClosure", null, 0, 1,
1103 Atom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED,
1104 IS_ORDERED);
1105 initEReference(getAtom_Arguments(), this.getArgument(), null, "arguments", null, 0, -1, Atom.class,
1106 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1107 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1108
1109 initEClass(implicitVariableEClass, ImplicitVariable.class, "ImplicitVariable", !IS_ABSTRACT, !IS_INTERFACE,
1110 IS_GENERATED_INSTANCE_CLASS);
1111
1112 initEClass(negativeLiteralEClass, NegativeLiteral.class, "NegativeLiteral", !IS_ABSTRACT, !IS_INTERFACE,
1113 IS_GENERATED_INSTANCE_CLASS);
1114 initEReference(getNegativeLiteral_Atom(), this.getAtom(), null, "atom", null, 0, 1, NegativeLiteral.class,
1115 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1116 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1117
1118 initEClass(existentialQuantifierEClass, ExistentialQuantifier.class, "ExistentialQuantifier", IS_ABSTRACT,
1119 IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1120 initEReference(getExistentialQuantifier_ImplicitVariables(), this.getImplicitVariable(), null,
1121 "implicitVariables", null, 0, -1, ExistentialQuantifier.class, !IS_TRANSIENT, !IS_VOLATILE,
1122 IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1123
1124 initEClass(assertionEClass, Assertion.class, "Assertion", !IS_ABSTRACT, !IS_INTERFACE,
1125 IS_GENERATED_INSTANCE_CLASS);
1126 initEReference(getAssertion_Relation(), this.getRelation(), null, "relation", null, 0, 1, Assertion.class,
1127 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1128 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1129 initEReference(getAssertion_Arguments(), this.getNode(), null, "arguments", null, 0, -1, Assertion.class,
1130 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
1131 IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1132 initEAttribute(getAssertion_Value(), this.getLogicValue(), "value", null, 0, 1, Assertion.class, !IS_TRANSIENT,
1133 !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1134
1135 initEClass(nodeEClass, Node.class, "Node", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1136
1137 initEClass(scopeDeclarationEClass, ScopeDeclaration.class, "ScopeDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1138 IS_GENERATED_INSTANCE_CLASS);
1139 initEReference(getScopeDeclaration_TypeScopes(), this.getTypeScope(), null, "typeScopes", null, 0, -1,
1140 ScopeDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1141 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1142
1143 initEClass(statementEClass, Statement.class, "Statement", IS_ABSTRACT, IS_INTERFACE,
1144 IS_GENERATED_INSTANCE_CLASS);
1145
1146 initEClass(typeScopeEClass, TypeScope.class, "TypeScope", !IS_ABSTRACT, !IS_INTERFACE,
1147 IS_GENERATED_INSTANCE_CLASS);
1148 initEReference(getTypeScope_TargetType(), this.getClassDeclaration(), null, "targetType", null, 0, 1,
1149 TypeScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1150 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1151 initEAttribute(getTypeScope_Increment(), ecorePackage.getEBoolean(), "increment", null, 0, 1, TypeScope.class,
1152 !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1153 initEReference(getTypeScope_Multiplicity(), this.getMultiplicity(), null, "multiplicity", null, 0, 1,
1154 TypeScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1155 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1156
1157 initEClass(multiplicityEClass, Multiplicity.class, "Multiplicity", IS_ABSTRACT, !IS_INTERFACE,
1158 IS_GENERATED_INSTANCE_CLASS);
1159
1160 initEClass(rangeMultiplicityEClass, RangeMultiplicity.class, "RangeMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
1161 IS_GENERATED_INSTANCE_CLASS);
1162 initEAttribute(getRangeMultiplicity_LowerBound(), ecorePackage.getEInt(), "lowerBound", "0", 0, 1,
1163 RangeMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1164 !IS_DERIVED, IS_ORDERED);
1165 initEAttribute(getRangeMultiplicity_UpperBound(), ecorePackage.getEInt(), "upperBound", "-1", 0, 1,
1166 RangeMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1167 !IS_DERIVED, IS_ORDERED);
1168
1169 initEClass(exactMultiplicityEClass, ExactMultiplicity.class, "ExactMultiplicity", !IS_ABSTRACT, !IS_INTERFACE,
1170 IS_GENERATED_INSTANCE_CLASS);
1171 initEAttribute(getExactMultiplicity_ExactValue(), ecorePackage.getEInt(), "exactValue", "1", 0, 1,
1172 ExactMultiplicity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
1173 !IS_DERIVED, IS_ORDERED);
1174
1175 initEClass(unboundedMultiplicityEClass, UnboundedMultiplicity.class, "UnboundedMultiplicity", !IS_ABSTRACT,
1176 !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
1177
1178 initEClass(argumentEClass, Argument.class, "Argument", !IS_ABSTRACT, !IS_INTERFACE,
1179 IS_GENERATED_INSTANCE_CLASS);
1180 initEReference(getArgument_VariableOrNode(), this.getVariableOrNode(), null, "variableOrNode", null, 0, 1,
1181 Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
1182 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1183 initEReference(getArgument_SingletonVariable(), this.getImplicitVariable(), null, "singletonVariable", null, 0,
1184 1, Argument.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1185 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1186
1187 initEClass(enumDeclarationEClass, EnumDeclaration.class, "EnumDeclaration", !IS_ABSTRACT, !IS_INTERFACE,
1188 IS_GENERATED_INSTANCE_CLASS);
1189 initEReference(getEnumDeclaration_Literals(), this.getNode(), null, "literals", null, 0, -1,
1190 EnumDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
1191 !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
1192
1193 initEClass(variableOrNodeEClass, VariableOrNode.class, "VariableOrNode", IS_ABSTRACT, !IS_INTERFACE,
1194 IS_GENERATED_INSTANCE_CLASS);
1195
1196 // Initialize enums and add enum literals
1197 initEEnum(logicValueEEnum, LogicValue.class, "LogicValue");
1198 addEEnumLiteral(logicValueEEnum, LogicValue.TRUE);
1199 addEEnumLiteral(logicValueEEnum, LogicValue.FALSE);
1200 addEEnumLiteral(logicValueEEnum, LogicValue.UNKNOWN);
1201
1202 // Create resource
1203 createResource(eNS_URI);
1204 }
1205
1206} //ProblemPackageImpl