1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package io.github.tonywasher.joceanus.themis.solver.proj;
18
19 import io.github.tonywasher.joceanus.metis.field.MetisFieldSet;
20 import io.github.tonywasher.joceanus.themis.parser.base.ThemisDataResource;
21 import io.github.tonywasher.joceanus.themis.parser.base.ThemisInstance.ThemisMethodInstance;
22 import io.github.tonywasher.joceanus.themis.solver.proj.ThemisSolverDef.ThemisSolverClassDef;
23 import io.github.tonywasher.joceanus.themis.solver.proj.ThemisSolverDef.ThemisSolverMethodDef;
24
25
26
27
28 public class ThemisSolverMethod
29 implements ThemisSolverMethodDef {
30
31
32
33 private static final MetisFieldSet<ThemisSolverMethod> FIELD_DEFS = MetisFieldSet.newFieldSet(ThemisSolverMethod.class);
34
35
36
37
38 static {
39 FIELD_DEFS.declareLocalField(ThemisDataResource.DATA_UNDERLYING, ThemisSolverMethod::getUnderlyingMethod);
40 }
41
42
43
44
45 private final ThemisSolverClassDef theClass;
46
47
48
49
50 private final ThemisMethodInstance theMethod;
51
52
53
54
55
56
57
58 ThemisSolverMethod(final ThemisSolverClassDef pClass,
59 final ThemisMethodInstance pMethod) {
60
61 theClass = pClass;
62 theMethod = pMethod;
63 }
64
65 @Override
66 public MetisFieldSet<ThemisSolverMethod> getDataFieldSet() {
67 return FIELD_DEFS;
68 }
69
70 @Override
71 public ThemisSolverClassDef getOwningClass() {
72 return theClass;
73 }
74
75 @Override
76 public ThemisMethodInstance getUnderlyingMethod() {
77 return theMethod;
78 }
79 }