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 * Convenience implementation of IChecker interface. Has a default
* implementation for common methods. * implementation for common methods.
* *
* Clients may extend this class.
*/ */
public abstract class AbstractChecker implements IChecker { public abstract class AbstractChecker implements IChecker {
protected String name; 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 * Represents Severity of the codan problem. It is directly mapped to markers
* severity, * 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.
* *
*/ */
public enum CodanSeverity { public enum CodanSeverity {

View file

@ -16,7 +16,6 @@ import org.eclipse.core.resources.IResource;
* IProblemReporterPersistent - interface to report problems, which are * IProblemReporterPersistent - interface to report problems, which are
* persistent, ex. markers * persistent, ex. markers
* *
* Clients may implement and extend this interface
* <p> * <p>
* <strong>EXPERIMENTAL</strong>. This class or interface has been added as part * <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 * 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. * Modifiable problem.
* *
* Clients may extend and implement this interface *
* <p> * <p>
* <strong>EXPERIMENTAL</strong>. This class or interface has been added as part * <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 * of a work in progress. There is no guarantee that this API will work or that
* it will remain the same. * it will remain the same.
* </p> * </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 { 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. * Control flow graph's basic block node - super interface of all nodes.
* It has set on incoming nodes and outgoing nodes. * It has set on incoming nodes and outgoing nodes.
* <p/> * <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 { 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 * 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, public interface IBranchNode extends IBasicBlock, ISingleIncoming,
ISingleOutgoing { ISingleOutgoing {

View file

@ -3,6 +3,9 @@ package org.eclipse.cdt.codan.core.model.cfg;
/** /**
* Connector node has multiple incoming branches and single outgoing. * Connector node has multiple incoming branches and single outgoing.
* Incoming nodes are usually instance of {@link IJumpNode} * 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 { public interface IConnectorNode extends IBasicBlock, ISingleOutgoing {
/** /**

View file

@ -29,6 +29,9 @@ import java.util.Iterator;
* change of control direction * change of control direction
* <li> {@link IBranchNode} - usually node where decision node connect to, * <li> {@link IBranchNode} - usually node where decision node connect to,
* labels represent a way where controls goes 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 { 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, * 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 * it has one incoming arc and many outgoing, each of outgoing node should be
* IBranchNode * 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 { 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 * Exit node of the graph. Usually return from the function, can also be throw
* or abort, such at exit(0) call. * 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 { 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 * 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. * statement. Can be used to implement gotos, break, continue, end of branches.
* Outgoing node is always {@link IConnectorNode} * 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 { 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 * Control Flow Graph Node factory
*
* @noextend This interface is not intended to be extended by clients.
*/ */
public interface INodeFactory { 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 * Has one incoming, one outgoing connection. Usually expression statement or
* declaration. * 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, public interface IPlainNode extends IBasicBlock, ISingleOutgoing,
ISingleIncoming { ISingleIncoming {

View file

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

View file

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

View file

@ -1,10 +1,12 @@
package org.eclipse.cdt.codan.core.model.cfg; package org.eclipse.cdt.codan.core.model.cfg;
/** /**
* Start node of the control flow graph. Each graph has only one start node. It * 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 * has no incoming arcs and one outgoing arc. It also contains iterator for
* function exit nodes. * 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 { public interface IStartNode extends IBasicBlock, ISingleOutgoing {
} }