Package: IVdmSourceUnit

IVdmSourceUnit

Coverage

1: /*
2: * #%~
3: * org.overture.ide.core
4: * %%
5: * Copyright (C) 2008 - 2014 Overture
6: * %%
7: * This program is free software: you can redistribute it and/or modify
8: * it under the terms of the GNU General Public License as
9: * published by the Free Software Foundation, either version 3 of the
10: * License, or (at your option) any later version.
11: *
12: * This program is distributed in the hope that it will be useful,
13: * but WITHOUT ANY WARRANTY; without even the implied warranty of
14: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15: * GNU General Public License for more details.
16: *
17: * You should have received a copy of the GNU General Public
18: * License along with this program. If not, see
19: * <http://www.gnu.org/licenses/gpl-3.0.html>.
20: * #~%
21: */
22: package org.overture.ide.core.resources;
23:
24: //ICompilationUnit
25: import java.io.File;
26: import java.util.List;
27:
28: import org.eclipse.core.resources.IFile;
29: import org.overture.ast.node.INode;
30: import org.overture.ide.core.IVdmElement;
31:
32: public interface IVdmSourceUnit extends IVdmElement
33: {
34:
35:         public static final int VDM_DEFAULT = 1;
36:         public static final int VDM_CLASS_SPEC = 1;
37:         public static final int VDM_MODULE_SPEC = 2;
38:         public static final int VDM_MODULE_SPEC_FLAT = 3;
39:
40:         public int getType();
41:
42:         public void setType(int type);
43:
44:         public IFile getFile();
45:
46:         public File getSystemFile();
47:
48:         public void reconcile(List<INode> parseResult, boolean parseErrors);
49:
50:         public List<INode> getParseList();
51:
52:         public boolean exists();
53:
54:         public void clean();
55:
56:         public abstract IVdmProject getProject();
57:
58:         public abstract boolean hasParseTree();
59:
60:         public abstract boolean hasParseErrors();
61:
62:         public abstract VdmSourceUnitWorkingCopy getWorkingCopy();
63: }