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.rule.updatesimplifier;
09:
10: import de.uka.ilkd.key.logic.Term;
11: import de.uka.ilkd.key.logic.op.NonRigidHeapDependentFunction;
12: import de.uka.ilkd.key.rule.UpdateSimplifier;
13:
14: /**
15: * This rule deals with locations that are only heap dependent, i.e. they do not
16: * depend on local program variables.
17: */
18: public class ApplyOnHeapDependentLocation extends ApplyOnModality {
19: public ApplyOnHeapDependentLocation(
20: UpdateSimplifier updateSimplifier, boolean deletionEnabled) {
21: super (updateSimplifier, deletionEnabled);
22: }
23:
24: /* (non-Javadoc)
25: * @see de.uka.ilkd.key.rule.IUpdateRule#isApplicable(de.uka.ilkd.key.rule.updatesimplifier.Update, de.uka.ilkd.key.logic.Term)
26: */
27: public boolean isApplicable(Update update, Term target) {
28: return target.op() instanceof NonRigidHeapDependentFunction;
29: }
30: }
|