Package: DefinitionValueChecker
DefinitionValueChecker
name | instruction | branch | complexity | line | method | ||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DefinitionValueChecker(IInterpreterAssistantFactory) |
|
|
|
|
|
||||||||||||||||||||
caseAImportedDefinition(AImportedDefinition) |
|
|
|
|
|
||||||||||||||||||||
caseAInheritedDefinition(AInheritedDefinition) |
|
|
|
|
|
||||||||||||||||||||
caseALocalDefinition(ALocalDefinition) |
|
|
|
|
|
||||||||||||||||||||
caseARenamedDefinition(ARenamedDefinition) |
|
|
|
|
|
||||||||||||||||||||
caseAValueDefinition(AValueDefinition) |
|
|
|
|
|
||||||||||||||||||||
createNewReturnValue(INode) |
|
|
|
|
|
||||||||||||||||||||
createNewReturnValue(Object) |
|
|
|
|
|
||||||||||||||||||||
defaultPDefinition(PDefinition) |
|
|
|
|
|
Coverage
1: package org.overture.interpreter.utilities.definition;
2:
3: import org.overture.ast.analysis.AnalysisException;
4: import org.overture.ast.analysis.AnswerAdaptor;
5: import org.overture.ast.definitions.AImportedDefinition;
6: import org.overture.ast.definitions.AInheritedDefinition;
7: import org.overture.ast.definitions.ALocalDefinition;
8: import org.overture.ast.definitions.ARenamedDefinition;
9: import org.overture.ast.definitions.AValueDefinition;
10: import org.overture.ast.definitions.PDefinition;
11: import org.overture.ast.node.INode;
12: import org.overture.interpreter.assistant.IInterpreterAssistantFactory;
13:
14: /***************************************
15: * This method checks if a definition is a value.
16: *
17: * @author gkanos
18: ****************************************/
19:
20: public class DefinitionValueChecker extends AnswerAdaptor<Boolean>
21: {
22:         protected IInterpreterAssistantFactory af;
23:
24:         public DefinitionValueChecker(IInterpreterAssistantFactory af)
25:         {
26:                 this.af = af;
27:         }
28:
29:         @Override
30:         public Boolean caseAImportedDefinition(AImportedDefinition def)
31:                         throws AnalysisException
32:         {
33:
34:                 return def.getDef().apply(THIS);
35:         }
36:
37:         @Override
38:         public Boolean caseAInheritedDefinition(AInheritedDefinition def)
39:                         throws AnalysisException
40:         {
41:                 return def.getSuperdef().apply(THIS);
42:         }
43:
44:         @Override
45:         public Boolean caseARenamedDefinition(ARenamedDefinition def)
46:                         throws AnalysisException
47:         {
48:                 return def.getDef().apply(THIS);
49:         }
50:
51:         @Override
52:         public Boolean caseAValueDefinition(AValueDefinition def)
53:                         throws AnalysisException
54:         {
55:                 return true;
56:         }
57:
58:         @Override
59:         public Boolean caseALocalDefinition(ALocalDefinition def)
60:                         throws AnalysisException
61:         {
62:•                return def.getValueDefinition() != null;
63:         }
64:
65:         @Override
66:         public Boolean defaultPDefinition(PDefinition def) throws AnalysisException
67:         {
68:                 return false;
69:         }
70:
71:         @Override
72:         public Boolean createNewReturnValue(INode node) throws AnalysisException
73:         {
74:                 // TODO Auto-generated method stub
75:                 return null;
76:         }
77:
78:         @Override
79:         public Boolean createNewReturnValue(Object node) throws AnalysisException
80:         {
81:                 // TODO Auto-generated method stub
82:                 return null;
83:         }
84:
85: }