01: // This file is part of KeY - Integrated Deductive Software Design
02: // Copyright (C) 2001-2007 Universitaet Karlsruhe, Germany
03: // Universitaet Koblenz-Landau, Germany
04: // Chalmers University of Technology, Sweden
05: //
06: // The KeY system is protected by the GNU General Public License.
07: // See LICENSE.TXT for details.
08: package de.uka.ilkd.key.visualdebugger.executiontree;
09:
10: import java.util.LinkedList;
11:
12: import de.uka.ilkd.key.logic.ListOfTerm;
13: import de.uka.ilkd.key.visualdebugger.SourceElementId;
14:
15: /**
16: * FIXME: the copy method creates insane trees (I do currently no understand
17: * what ITNodes are, but most probably the copy method brings ETNodes and
18: * ITNodes out of sync), up to now I am not sure which behaviour of copy has
19: * been wanted. This bug applies to all subclasses as well.
20: */
21: public class ETStatementNode extends ETNode {
22: SourceElementId statementId;
23:
24: public ETStatementNode(ListOfTerm bc, LinkedList nodes,
25: SourceElementId id, ETNode parent) {
26: super (bc, nodes, parent);
27: statementId = id;
28: assert (id != null);
29: }
30:
31: public ETStatementNode(ListOfTerm bc, SourceElementId id,
32: ETNode parent) {
33: super (bc, parent);
34: statementId = id;
35: assert (id != null);
36: }
37:
38: public SourceElementId getStatementId() {
39: return statementId;
40: }
41:
42: public ETNode copy(ETNode p) {
43: ETStatementNode copy = new ETStatementNode(getBC(),
44: (LinkedList) getITNodes().clone(), statementId, p);
45: copy.setChildren((LinkedList) getChildrenList().clone());
46: return copy;
47: }
48:
49: public String print() {
50:
51: return super .print() + " " + statementId;
52: }
53:
54: }
|