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: //This file is part of KeY - Integrated Deductive Software Design
09: //Copyright (C) 2001-2005 Universitaet Karlsruhe, Germany
10: // Universitaet Koblenz-Landau, Germany
11: // Chalmers University of Technology, Sweden
12: //
13: //The KeY system is protected by the GNU General Public License.
14: //See LICENSE.TXT for details.
15: //
16: //
17:
18: package de.uka.ilkd.key.parser.ocl;
19:
20: interface PropertyResolver {
21:
22: /**
23: * Resolves property calls on explicit receivers.
24: * @param receiver receiver (may *not* be null)
25: * @param name name of the property
26: * @param parameters the actual parameters, or null if not applicable
27: * @return a suitable term or collection if successful, null otherwise
28: */
29: public OCLEntity resolve(OCLEntity receiver, String name,
30: OCLParameters parameters) throws OCLTranslationError;
31:
32: /**
33: * Determines whether a propertyCall needs a declaration of a variable
34: * @param propertyName name of the propertyCall
35: * @return true, if propertyName needs a variable to be declarated
36: */
37: public boolean needVarDeclaration(String propertyName);
38:
39: }
|