aboutsummaryrefslogtreecommitdiffstats
path: root/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src-gen/queries/FamilyTreeConstraints.java
blob: 33dfe69759794a21a6429d178d3c4e76e1ca680b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/**
 * Generated from platform:/resource/case.study.pledge.run/src/queries/familyTreeConstraints.vql
 */
package queries;

import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine;
import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup;
import queries.MemberHasParent;
import queries.MemberIsItsOwnParent;
import queries.NegativeAge;
import queries.ParentTooYoung;
import queries.TwoMembersHaveNoParent;

/**
 * A pattern group formed of all public patterns defined in familyTreeConstraints.vql.
 * 
 * <p>Use the static instance as any {@link interface org.eclipse.viatra.query.runtime.api.IQueryGroup}, to conveniently prepare
 * a VIATRA Query engine for matching all patterns originally defined in file familyTreeConstraints.vql,
 * in order to achieve better performance than one-by-one on-demand matcher initialization.
 * 
 * <p> From package queries, the group contains the definition of the following patterns: <ul>
 * <li>memberIsItsOwnParent</li>
 * <li>twoMembersHaveNoParent</li>
 * <li>memberHasParent</li>
 * <li>negativeAge</li>
 * <li>parentTooYoung</li>
 * </ul>
 * 
 * @see IQueryGroup
 * 
 */
@SuppressWarnings("all")
public final class FamilyTreeConstraints extends BaseGeneratedPatternGroup {
  /**
   * Access the pattern group.
   * 
   * @return the singleton instance of the group
   * @throws ViatraQueryRuntimeException if there was an error loading the generated code of pattern specifications
   * 
   */
  public static FamilyTreeConstraints instance() {
    if (INSTANCE == null) {
        INSTANCE = new FamilyTreeConstraints();
    }
    return INSTANCE;
  }
  
  private static FamilyTreeConstraints INSTANCE;
  
  private FamilyTreeConstraints() {
    querySpecifications.add(MemberIsItsOwnParent.instance());
    querySpecifications.add(TwoMembersHaveNoParent.instance());
    querySpecifications.add(MemberHasParent.instance());
    querySpecifications.add(NegativeAge.instance());
    querySpecifications.add(ParentTooYoung.instance());
  }
  
  public MemberIsItsOwnParent getMemberIsItsOwnParent() {
    return MemberIsItsOwnParent.instance();
  }
  
  public MemberIsItsOwnParent.Matcher getMemberIsItsOwnParent(final ViatraQueryEngine engine) {
    return MemberIsItsOwnParent.Matcher.on(engine);
  }
  
  public TwoMembersHaveNoParent getTwoMembersHaveNoParent() {
    return TwoMembersHaveNoParent.instance();
  }
  
  public TwoMembersHaveNoParent.Matcher getTwoMembersHaveNoParent(final ViatraQueryEngine engine) {
    return TwoMembersHaveNoParent.Matcher.on(engine);
  }
  
  public MemberHasParent getMemberHasParent() {
    return MemberHasParent.instance();
  }
  
  public MemberHasParent.Matcher getMemberHasParent(final ViatraQueryEngine engine) {
    return MemberHasParent.Matcher.on(engine);
  }
  
  public NegativeAge getNegativeAge() {
    return NegativeAge.instance();
  }
  
  public NegativeAge.Matcher getNegativeAge(final ViatraQueryEngine engine) {
    return NegativeAge.Matcher.on(engine);
  }
  
  public ParentTooYoung getParentTooYoung() {
    return ParentTooYoung.instance();
  }
  
  public ParentTooYoung.Matcher getParentTooYoung(final ViatraQueryEngine engine) {
    return ParentTooYoung.Matcher.on(engine);
  }
}