1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-01 06:05:24 +02:00

Bug 279740: API restrictions

This commit is contained in:
Alena Laskavaia 2010-06-01 02:32:16 +00:00
parent fbd72a420b
commit 587eb8061f
16 changed files with 37 additions and 9 deletions

View file

@ -19,7 +19,6 @@ import org.eclipse.core.resources.IResource;
* Convenience implementation of IChecker interface. Has a default
* implementation for common methods.
*
* Clients may extend this class.
*/
public abstract class AbstractChecker implements IChecker {
protected String name;

View file

@ -15,11 +15,7 @@ import org.eclipse.core.resources.IMarker;
/**
*
* Represents Severity of the codan problem. It is directly mapped to markers
* severity,
* therefore not intended to be extended.
*
* @noextend This class is not intended to be extended by clients.
* @noinstantiate This class is not intended to be instantiated by clients.
* severity.
*
*/
public enum CodanSeverity {

View file

@ -16,7 +16,6 @@ import org.eclipse.core.resources.IResource;
* IProblemReporterPersistent - interface to report problems, which are
* persistent, ex. markers
*
* Clients may implement and extend this interface
* <p>
* <strong>EXPERIMENTAL</strong>. This class or interface has been added as part
* of a work in progress. There is no guarantee that this API will work or that

View file

@ -15,12 +15,15 @@ import org.eclipse.cdt.codan.core.param.IProblemPreference;
/**
* Modifiable problem.
*
* Clients may extend and implement this interface
*
* <p>
* <strong>EXPERIMENTAL</strong>. This class or interface has been added as part
* of a work in progress. There is no guarantee that this API will work or that
* it will remain the same.
* </p>
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IProblemWorkingCopy extends IProblem {
/**

View file

@ -4,6 +4,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
* Control flow graph's basic block node - super interface of all nodes.
* It has set on incoming nodes and outgoing nodes.
* <p/>
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IBasicBlock {
/**

View file

@ -12,6 +12,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Node that represent empty operator with label, such as case branch or label
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IBranchNode extends IBasicBlock, ISingleIncoming,
ISingleOutgoing {

View file

@ -3,6 +3,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Connector node has multiple incoming branches and single outgoing.
* Incoming nodes are usually instance of {@link IJumpNode}
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IConnectorNode extends IBasicBlock, ISingleOutgoing {
/**

View file

@ -29,6 +29,9 @@ import java.util.Iterator;
* change of control direction
* <li> {@link IBranchNode} - usually node where decision node connect to,
* labels represent a way where controls goes to
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IControlFlowGraph {
/**

View file

@ -5,6 +5,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
* Interface for decision node. This node represent condition node in the graph,
* it has one incoming arc and many outgoing, each of outgoing node should be
* IBranchNode
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IDecisionNode extends IBasicBlock, ISingleIncoming {
/**

View file

@ -14,6 +14,8 @@ package org.eclipse.cdt.codan.core.model.cfg;
* Exit node of the graph. Usually return from the function, can also be throw
* or abort, such at exit(0) call.
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IExitNode extends IBasicBlock, ISingleIncoming {
/**

View file

@ -4,6 +4,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
* Node that changes the control of the graph, i.e. passes control to non-next
* statement. Can be used to implement gotos, break, continue, end of branches.
* Outgoing node is always {@link IConnectorNode}
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IJumpNode extends IBasicBlock, ISingleOutgoing {
/**

View file

@ -12,6 +12,8 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Control Flow Graph Node factory
*
* @noextend This interface is not intended to be extended by clients.
*/
public interface INodeFactory {
/**

View file

@ -3,6 +3,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Has one incoming, one outgoing connection. Usually expression statement or
* declaration.
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IPlainNode extends IBasicBlock, ISingleOutgoing,
ISingleIncoming {

View file

@ -2,6 +2,8 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Node with one incoming arc
*
* @noextend This interface is not intended to be extended by clients.
*/
public interface ISingleIncoming {
/**

View file

@ -2,6 +2,8 @@ package org.eclipse.cdt.codan.core.model.cfg;
/**
* Node with one outgoing arc
*
* @noextend This interface is not intended to be extended by clients.
*/
public interface ISingleOutgoing {
/**

View file

@ -1,10 +1,12 @@
package org.eclipse.cdt.codan.core.model.cfg;
/**
* Start node of the control flow graph. Each graph has only one start node. It
* has no incoming arcs and one outgoing arc. It also contains iterator for
* function exit nodes.
*
* @noextend This interface is not intended to be extended by clients.
* @noimplement This interface is not intended to be implemented by clients.
*/
public interface IStartNode extends IBasicBlock, ISingleOutgoing {
}