Package: WarningNode
WarningNode
| name | instruction | branch | complexity | line | method | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| WarningNode(AbstractNode) | 
  | 
  | 
  | 
  | 
  | 
||||||||||||||||||||
| equals(Object) | 
  | 
  | 
  | 
  | 
  | 
||||||||||||||||||||
| hashCode() | 
  | 
  | 
  | 
  | 
  | 
||||||||||||||||||||
| interpret(CommunicationManager) | 
  | 
  | 
  | 
  | 
  | 
||||||||||||||||||||
| toString() | 
  | 
  | 
  | 
  | 
  | 
||||||||||||||||||||
Coverage
1: package pruefskript.parser.nodes;
2: 
3: import basic.PruefskriptConstants;
4: import pruefskript.CommunicationManager;
5: import pruefskript.parser.exceptions.CheckScriptException;
6: import pruefskript.parser.exceptions.WrongNodeException;
7: import pruefskript.parser.values.AbstractReturnValue;
8: import pruefskript.parser.values.VoidValue;
9: 
10: /**
11:  * Alle Warnings und Errors werden gesammelt und zum Schluss ausgegeben.
12:  * 
13:  * @author Phil
14:  * 
15:  */
16: public class WarningNode extends AbstractUnaryOperationNode {
17: 
18:         /**
19:          * 
20:          * @param value
21:          *            AbstractNode
22:          */
23:         public WarningNode(final AbstractNode value) {
24:                 super(value);
25:         }
26: 
27:         @Override
28:         public String toString() {
29:                 return PruefskriptConstants.WARNINGTITLE + PruefskriptConstants.BRACKET_OPEN
30:                                 + super.toString() + PruefskriptConstants.BRACKET_CLOSE;
31:         }
32: 
33:         @Override
34:         public boolean equals(final Object obj) {
35:•                return super.equals(obj) && obj instanceof WarningNode;
36: 
37:         }
38: 
39:         @Override
40:         public int hashCode() {
41:                 return super.hashCode() + PruefskriptConstants.WARNINGNODE_HASHCODE;
42:         }
43: 
44:         @Override
45:         public VoidValue interpret(final CommunicationManager mgr) throws CheckScriptException {
46:                 final AbstractReturnValue op = this.getOperand().interpret(mgr);
47:•                if (op.isStringValue()) {
48:                         mgr.addWarning(op.toStringValue().getValue());
49:                         return new VoidValue();
50:                 } else {
51:                         throw new WrongNodeException(PruefskriptConstants.UNEXPECTED_STRING_OPERATION);
52:                 }
53:         }
54: 
55: }