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: //
09: //
10: package de.uka.ilkd.key.proof.init;
11:
12: import de.uka.ilkd.key.gui.configuration.LibrariesSettings;
13:
14: /** Represents an entity read to produce an environment to read a proof
15: * obligation. Environment means the initial configuration of a prover
16: * containing namespaces and Java model.
17: */
18: public interface EnvInput {
19:
20: /**
21: * Returns the name of this input.
22: */
23: String name();
24:
25: /**
26: * Returns the total numbers of chars that can be read in this input.
27: */
28: int getNumberOfChars();
29:
30: /**
31: * Sets the initial configuration the read environment input should be
32: * added to. Must be called before calling any of the read* methods.
33: */
34: void setInitConfig(InitConfig initConfig);
35:
36: /** reads the include section and returns an Includes object.
37: */
38: Includes readIncludes() throws ProofInputException;
39:
40: /** reads the libraries settings
41: */
42: LibrariesSettings readLibrariesSettings()
43: throws ProofInputException;
44:
45: /** reads the Java path.
46: */
47: String readJavaPath() throws ProofInputException;
48:
49: /** reads the input using the given modification strategy, i.e.,
50: * parts of the input do not modify the initial configuration while
51: * others do.
52: */
53: void read(ModStrategy mod) throws ProofInputException;
54: }
|