Clover Coverage Report
Coverage timestamp: Sa Aug 2 2008 13:56:27 CEST
0   69   0   -
0   8   -   0
0     -  
1    
 
  NodeType       Line # 32 0 0 - -1.0
 
No Tests
 
1    /* $Id: NodeType.java,v 1.9 2008/07/26 07:59:44 m31 Exp $
2    *
3    * This file is part of the project "Hilbert II" - http://www.qedeq.org
4    *
5    * Copyright 2000-2008, Michael Meyling <mime@qedeq.org>.
6    *
7    * "Hilbert II" is free software; you can redistribute
8    * it and/or modify it under the terms of the GNU General Public
9    * License as published by the Free Software Foundation; either
10    * version 2 of the 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   
18    package org.qedeq.kernel.base.module;
19   
20   
21    /**
22    * Marker interface for different node types. Might be a definition or theorem or else.
23    *
24    * TODO mime 20050707: an interface must not know its implementations. This one does! This was
25    * necessary as a quick hack to get some information in QedeqBoFactory and Context2XPath.
26    * mime 20051216 I still see no solution to get round this. Some JUnit tests work against
27    * this interface and get no information about the instance.
28    *
29    * @version $Revision: 1.9 $
30    * @author Michael Meyling
31    */
 
32    public interface NodeType {
33   
34    /**
35    * Get axiom, if this is an instance of {@link Axiom}.
36    *
37    * @return Axiom, maybe <code>null</code>.
38    */
39    public Axiom getAxiom();
40   
41    /**
42    * Get definition, if this is an instance of {@link PredicateDefinition}.
43    *
44    * @return Definition, maybe <code>null</code>.
45    */
46    public PredicateDefinition getPredicateDefinition();
47   
48    /**
49    * Get definition, if this is an instance of {@link FunctionDefinition}.
50    *
51    * @return Definition, maybe <code>null</code>.
52    */
53    public FunctionDefinition getFunctionDefinition();
54   
55    /**
56    * Get proposition, if this is an instance of {@link Proposition}.
57    *
58    * @return Proposition, maybe <code>null</code>.
59    */
60    public Proposition getProposition();
61   
62    /**
63    * Get rule, if this is an instance of {@link Rule}.
64    *
65    * @return Rule, maybe <code>null</code>.
66    */
67    public Rule getRule();
68   
69    }