diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/CASTVisitor.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/CASTVisitor.java index 72832c7442b..35b1a7adb43 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/CASTVisitor.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/CASTVisitor.java @@ -16,9 +16,26 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.ASTVisitor; - +/** + * This subclass of ASTVisitor that allows for better control in traversing C. + * + * @ref ASTVisitor + * @author jcamelon + */ public abstract class CASTVisitor extends ASTVisitor { - public boolean shouldVisitDesignators = false; - - public int visit( ICASTDesignator designator ) { return PROCESS_CONTINUE; } + /** + * Override this value in your subclass if you do wish to visit designators. + */ + public boolean shouldVisitDesignators = false; + + /** + * Function to override if you wish to visit designators in your + * implementation. + * + * @param designator + * @return + */ + public int visit(ICASTDesignator designator) { + return PROCESS_CONTINUE; + } } \ No newline at end of file diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayDesignator.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayDesignator.java index 19e1c271905..fca5fb5956a 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayDesignator.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayDesignator.java @@ -13,13 +13,33 @@ import org.eclipse.cdt.core.dom.ast.ASTNodeProperty; import org.eclipse.cdt.core.dom.ast.IASTExpression; /** + * C-style array designator. e.g. struct ABC { int def[10] }; struct ABC + * instance = { def[0] = 9 }; + * * @author jcamelon */ public interface ICASTArrayDesignator extends ICASTDesignator { - public static final ASTNodeProperty SUBSCRIPT_EXPRESSION = new ASTNodeProperty( "Subscript Expression" ); //$NON-NLS-1$ - - public IASTExpression getSubscriptExpression(); - public void setSubscriptExpression( IASTExpression value ); - + /** + * SUBSCRIPT_EXPRESSION represents the relationship between + * the designator and the subscript expression. + */ + public static final ASTNodeProperty SUBSCRIPT_EXPRESSION = new ASTNodeProperty( + "Subscript Expression"); //$NON-NLS-1$ + + /** + * Get the subsript expression. + * + * @return value IASTExpression + */ + public IASTExpression getSubscriptExpression(); + + /** + * Set the subscript expression. + * + * @param value + * IASTExpression + */ + public void setSubscriptExpression(IASTExpression value); + } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayModifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayModifier.java index 7f142902213..689eb403763 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayModifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTArrayModifier.java @@ -12,19 +12,85 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTArrayModifier; /** + * This interface represents the role of a C array modifier. C allows for + * modifiers (const, restrict, etc.) as well as variable sized arrays. + * * @author jcamelon */ public interface ICASTArrayModifier extends IASTArrayModifier { - - public boolean isConst(); - public boolean isStatic(); - public boolean isRestrict(); - public boolean isVolatile(); - - public void setConst( boolean value ); - public void setVolatile( boolean value ); - public void setRestrict( boolean value ); - public void setStatic( boolean value ); - public boolean isVariableSized(); - public void setVariableSized( boolean value ); + + /** + * Is the const modifier used? + * + * @return boolean + */ + public boolean isConst(); + + /** + * Is the static modifier used? + * + * @return boolean + */ + public boolean isStatic(); + + /** + * Is the restrict modifier used? + * + * @return boolean + */ + public boolean isRestrict(); + + /** + * Is the volatile modifier used? + * + * @return boolean + */ + public boolean isVolatile(); + + /** + * Set true/false that the const modifier is used. + * + * @param value + * boolean + */ + public void setConst(boolean value); + + /** + * Set true/false that the volatile modifier is used. + * + * @param value + * boolean + */ + public void setVolatile(boolean value); + + /** + * Set true/false that the restrict modifier is used. + * + * @param value + * boolean + */ + public void setRestrict(boolean value); + + /** + * Set true/false that the static modifier is used. + * + * @param value + * boolean + */ + public void setStatic(boolean value); + + /** + * Is the array variable sized? ( used ... ) + * + * @return boolean + */ + public boolean isVariableSized(); + + /** + * Set the array to be variable sized dependent upon value. + * + * @param value + * boolean + */ + public void setVariableSized(boolean value); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTCompositeTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTCompositeTypeSpecifier.java index c4fba768c06..d6743120c3e 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTCompositeTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTCompositeTypeSpecifier.java @@ -12,9 +12,11 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTCompositeTypeSpecifier; /** + * Structs and Unions in C can be qualified w/restrict keyword. + * * @author jcamelon */ public interface ICASTCompositeTypeSpecifier extends - IASTCompositeTypeSpecifier, ICASTDeclSpecifier { + IASTCompositeTypeSpecifier, ICASTDeclSpecifier { } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDeclSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDeclSpecifier.java index c7929679271..5ab540e6fbf 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDeclSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDeclSpecifier.java @@ -13,13 +13,24 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTDeclSpecifier; /** + * C extension to IASTDeclSpecifier. (restrict keyword) + * * @author Doug Schaefer */ public interface ICASTDeclSpecifier extends IASTDeclSpecifier { - // Extra type qualifier in C + /** + * Is restrict keyword used? + * + * @return boolean + */ public boolean isRestrict(); - - public void setRestrict( boolean value ); - + + /** + * Set restrict to value. + * + * @param value + */ + public void setRestrict(boolean value); + } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignatedInitializer.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignatedInitializer.java index e47d9330b18..dbd83d963ad 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignatedInitializer.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignatedInitializer.java @@ -14,17 +14,62 @@ import org.eclipse.cdt.core.dom.ast.ASTNodeProperty; import org.eclipse.cdt.core.dom.ast.IASTInitializer; /** + * This interface represents a designated initializer. e.g. struct x y = { .z=4, + * .t[1] = 3 }; + * * @author jcamelon + * */ -public interface ICASTDesignatedInitializer extends - IASTInitializer { +public interface ICASTDesignatedInitializer extends IASTInitializer { - public static final ICASTDesignator [] EMPTY_DESIGNATOR_ARRAY = new ICASTDesignator[0]; - public static final ASTNodeProperty DESIGNATOR = new ASTNodeProperty( "Designator"); //$NON-NLS-1$ - public void addDesignator( ICASTDesignator designator ); - public ICASTDesignator [] getDesignators(); - - public static final ASTNodeProperty OPERAND = new ASTNodeProperty( "RHS Initializer"); //$NON-NLS-1$ - public IASTInitializer getOperandInitializer(); - public void setOperandInitializer( IASTInitializer rhs ); + /** + * Constant. + */ + public static final ICASTDesignator[] EMPTY_DESIGNATOR_ARRAY = new ICASTDesignator[0]; + + /** + * DESIGNATOR represents the relationship between an + * ICASTDesignatedInitializer and + * ICASTDesignator. + */ + public static final ASTNodeProperty DESIGNATOR = new ASTNodeProperty( + "Designator"); //$NON-NLS-1$ + + /** + * Add a designator to this initializer. + * + * @param designator + * ICASTDesignator + */ + public void addDesignator(ICASTDesignator designator); + + /** + * Get all of the designators. + * + * @return ICASTDesignator [] + */ + public ICASTDesignator[] getDesignators(); + + /** + * OPERAND represents the relationship between + * ICASTDesignatedInitializer and its + * IASTInitializer. + */ + public static final ASTNodeProperty OPERAND = new ASTNodeProperty( + "RHS Initializer"); //$NON-NLS-1$ + + /** + * Get the nested initializer. + * + * @return IASTInitializer + */ + public IASTInitializer getOperandInitializer(); + + /** + * Set the nested initializer. + * + * @param rhs + * IASTInitializer + */ + public void setOperandInitializer(IASTInitializer rhs); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignator.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignator.java index 5c9e4775bc8..018bc1852bf 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignator.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTDesignator.java @@ -12,10 +12,10 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTNode; /** + * Base interface for all C-style designators. + * * @author jcamelon */ public interface ICASTDesignator extends IASTNode { - - } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTElaboratedTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTElaboratedTypeSpecifier.java index 488d1f60bc8..a59272aa4d3 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTElaboratedTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTElaboratedTypeSpecifier.java @@ -12,9 +12,12 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTElaboratedTypeSpecifier; /** + * C's elaborated type specifier. (same as IASTElaboratedTypeSpecifier, except + * for the addition of the restrict keyword. + * * @author jcamelon */ public interface ICASTElaboratedTypeSpecifier extends - IASTElaboratedTypeSpecifier, ICASTDeclSpecifier { + IASTElaboratedTypeSpecifier, ICASTDeclSpecifier { } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTEnumerationSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTEnumerationSpecifier.java index 72ce2c4ee9f..b2ac293c1ce 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTEnumerationSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTEnumerationSpecifier.java @@ -12,9 +12,11 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTEnumerationSpecifier; /** + * C Enumeration decl specifier. Allows for "restrict enum X { a, b, c }; + * * @author jcamelon */ public interface ICASTEnumerationSpecifier extends ICASTDeclSpecifier, - IASTEnumerationSpecifier { + IASTEnumerationSpecifier { } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTFieldDesignator.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTFieldDesignator.java index 3cd50896e9a..341e1342a96 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTFieldDesignator.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTFieldDesignator.java @@ -13,12 +13,31 @@ import org.eclipse.cdt.core.dom.ast.ASTNodeProperty; import org.eclipse.cdt.core.dom.ast.IASTName; /** + * Specific Designator that represents a field reference. + * * @author jcamelon */ public interface ICASTFieldDesignator extends ICASTDesignator { - public static final ASTNodeProperty FIELD_NAME = new ASTNodeProperty( "Designator Field Name"); //$NON-NLS-1$ - - public IASTName getName(); - public void setName( IASTName name ); + /** + * FIELD_NAME represent the relationship between an + * ICASTFieldDesignator and an IASTName. + */ + public static final ASTNodeProperty FIELD_NAME = new ASTNodeProperty( + "Designator Field Name"); //$NON-NLS-1$ + + /** + * Get the field name. + * + * @return IASTName + */ + public IASTName getName(); + + /** + * Set the field name. + * + * @param name + * IASTName + */ + public void setName(IASTName name); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTPointer.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTPointer.java index 6c3885bbdac..8ba5f094f4a 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTPointer.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTPointer.java @@ -12,11 +12,24 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTPointer; /** + * C-specific pointer. (includes restrict modifier). + * * @author jcamelon */ public interface ICASTPointer extends IASTPointer { - - boolean isRestrict(); - void setRestrict( boolean value ); + + /** + * Is this a restrict pointer? + * + * @return isRestrict boolean + */ + boolean isRestrict(); + + /** + * Set this pointer to be restrict pointer. + * + * @param value + */ + void setRestrict(boolean value); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTSimpleDeclSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTSimpleDeclSpecifier.java index d857e862832..bb969213827 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTSimpleDeclSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTSimpleDeclSpecifier.java @@ -17,16 +17,44 @@ import org.eclipse.cdt.core.dom.ast.IASTSimpleDeclSpecifier; * * @author Doug Schaefer */ -public interface ICASTSimpleDeclSpecifier extends IASTSimpleDeclSpecifier, ICASTDeclSpecifier { +public interface ICASTSimpleDeclSpecifier extends IASTSimpleDeclSpecifier, + ICASTDeclSpecifier { // Extra types in C + /** + * t_Bool boolean. e.g. _Bool x; + */ public static final int t_Bool = IASTSimpleDeclSpecifier.t_last + 1; + + /** + * t_Complex complex number. e.g. _Complex t; + */ public static final int t_Complex = IASTSimpleDeclSpecifier.t_last + 2; + + /** + * t_Imaginary complex imaginary number. e.g. _Imaginr + */ public static final int t_Imaginary = IASTSimpleDeclSpecifier.t_last + 3; - - public boolean isLongLong(); - public void setLongLong( boolean value ); - + + /** + * t_last is defined for sub-interfaces. + */ public static final int t_last = t_Imaginary; - + + // allow for long long's + /** + * Is long long? + * + * @return boolean + */ + public boolean isLongLong(); + + /** + * Set long long to be 'value'. + * + * @param value + * boolean + */ + public void setLongLong(boolean value); + } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypeIdInitializerExpression.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypeIdInitializerExpression.java index 0ddcfc63387..4f29e97166b 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypeIdInitializerExpression.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypeIdInitializerExpression.java @@ -15,16 +15,55 @@ import org.eclipse.cdt.core.dom.ast.IASTInitializer; import org.eclipse.cdt.core.dom.ast.IASTTypeId; /** + * C Expression of the format type-id { initializer } + * * @author jcamelon */ public interface ICASTTypeIdInitializerExpression extends IASTExpression { - public static final ASTNodeProperty TYPE_ID = new ASTNodeProperty( "TypeId"); //$NON-NLS-1$ - public static final ASTNodeProperty INITIALIZER = new ASTNodeProperty( "Initializer"); //$NON-NLS-1$ - - public IASTTypeId getTypeId(); - public void setTypeId( IASTTypeId typeId ); - public IASTInitializer getInitializer(); - public void setInitializer( IASTInitializer initializer ); - + /** + * TYPE_ID represents the relationship between an + * ICASTTypeIdInitializerExpression and + * IASTTypeId. + */ + public static final ASTNodeProperty TYPE_ID = new ASTNodeProperty("TypeId"); //$NON-NLS-1$ + + /** + * INITIALIZER represents the relationship between an + * ICASTTypeIdInitializerExpression and + * IASTInitializer. + */ + public static final ASTNodeProperty INITIALIZER = new ASTNodeProperty( + "Initializer"); //$NON-NLS-1$ + + /** + * Get the type-id. + * + * @return IASTTypeId + */ + public IASTTypeId getTypeId(); + + /** + * Set the typeId. + * + * @param typeId + * IASTTypeId + */ + public void setTypeId(IASTTypeId typeId); + + /** + * Get the initializer. + * + * @return IASTInitializer + */ + public IASTInitializer getInitializer(); + + /** + * Set the initializer. + * + * @param initializer + * IASTInitializer + */ + public void setInitializer(IASTInitializer initializer); + } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypedefNameSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypedefNameSpecifier.java index cf85c6d4f30..0e4afe4f962 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypedefNameSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICASTTypedefNameSpecifier.java @@ -12,9 +12,12 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IASTNamedTypeSpecifier; /** + * This interface is just as an IASTNamedTypeSpecifier, except that it also + * includes the abiliy to use the restrict modifier. + * * @author jcamelon */ public interface ICASTTypedefNameSpecifier extends IASTNamedTypeSpecifier, - ICASTDeclSpecifier { + ICASTDeclSpecifier { } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICArrayType.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICArrayType.java index 34930da3020..b9f9044ff10 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICArrayType.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICArrayType.java @@ -18,8 +18,12 @@ import org.eclipse.cdt.core.dom.ast.IArrayType; */ public interface ICArrayType extends IArrayType { public boolean isConst() throws DOMException; + public boolean isRestrict() throws DOMException; + public boolean isVolatile() throws DOMException; + public boolean isStatic() throws DOMException; + public boolean isVariableLength() throws DOMException; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICBasicType.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICBasicType.java index a2c361674f2..45d0bc124b3 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICBasicType.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICBasicType.java @@ -22,8 +22,10 @@ import org.eclipse.cdt.core.dom.ast.IBasicType; public interface ICBasicType extends IBasicType { // Extra types in C public static final int t_Bool = ICASTSimpleDeclSpecifier.t_Bool; + public static final int t_Complex = ICASTSimpleDeclSpecifier.t_Complex; + public static final int t_Imaginary = ICASTSimpleDeclSpecifier.t_Imaginary; - + public boolean isLongLong() throws DOMException; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICCompositeTypeScope.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICCompositeTypeScope.java index 8968ab87eca..db2cbc13670 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICCompositeTypeScope.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICCompositeTypeScope.java @@ -21,12 +21,13 @@ import org.eclipse.cdt.core.dom.ast.IBinding; * @author aniefer */ public interface ICCompositeTypeScope extends ICScope { - /** - * get the binding for the member that has been previous added to this scope - * and that matches the given name. - * @param name - * @return - * @throws DOMException - */ - public IBinding getBinding( char[] name ) throws DOMException; + /** + * get the binding for the member that has been previous added to this scope + * and that matches the given name. + * + * @param name + * @return + * @throws DOMException + */ + public IBinding getBinding(char[] name) throws DOMException; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICExternalBinding.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICExternalBinding.java index 4838ed40f33..ab44cf01690 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICExternalBinding.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICExternalBinding.java @@ -17,10 +17,10 @@ package org.eclipse.cdt.core.dom.ast.c; import org.eclipse.cdt.core.dom.ast.IBinding; /** - * This interface represents a binding for a function or variable that - * is assumed to exist in another compilation unit and that would be found - * at link time. - * + * This interface represents a binding for a function or variable that is + * assumed to exist in another compilation unit and that would be found at link + * time. + * * @author aniefer */ public interface ICExternalBinding extends IBinding { diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionScope.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionScope.java index f220815e076..c8bc773ee7c 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionScope.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICFunctionScope.java @@ -22,22 +22,23 @@ import org.eclipse.cdt.core.dom.ast.IScope; * @author aniefer */ public interface ICFunctionScope extends ICScope { - - /** - * Get the scope representing the function body . - * returns null if there is no function definition - * @return - * @throws DOMException - */ - public IScope getBodyScope() throws DOMException; - - /** - * return the ILabel binding in this scope that matches the given name - * - * @param name - * @return - * @throws DOMException - */ - public IBinding getBinding( char[] name ) throws DOMException; + + /** + * Get the scope representing the function body . returns null if there is + * no function definition + * + * @return + * @throws DOMException + */ + public IScope getBodyScope() throws DOMException; + + /** + * return the ILabel binding in this scope that matches the given name + * + * @param name + * @return + * @throws DOMException + */ + public IBinding getBinding(char[] name) throws DOMException; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICPointerType.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICPointerType.java index fbbe5582dc7..a3fb8197543 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICPointerType.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICPointerType.java @@ -20,10 +20,11 @@ import org.eclipse.cdt.core.dom.ast.IPointerType; * @author aniefer */ public interface ICPointerType extends IPointerType { - - /** - * is this a restrict pointer - * @return - */ - boolean isRestrict(); + + /** + * is this a restrict pointer + * + * @return + */ + boolean isRestrict(); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICQualifierType.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICQualifierType.java index 67b3c6f5d29..623d1b427a9 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICQualifierType.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICQualifierType.java @@ -20,9 +20,10 @@ import org.eclipse.cdt.core.dom.ast.IQualifierType; * @author aniefer */ public interface ICQualifierType extends IQualifierType { - /** - * is this a restrict type - * @return - */ - public boolean isRestrict(); + /** + * is this a restrict type + * + * @return + */ + public boolean isRestrict(); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICScope.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICScope.java index 25fd33a7381..cee367a5c02 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICScope.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/c/ICScope.java @@ -22,38 +22,43 @@ import org.eclipse.cdt.core.dom.ast.IScope; * @author aniefer */ public interface ICScope extends IScope { - /** - * ISO C:99 6.2.3 - * there are seperate namespaces for various categories of identifiers: - * - label names ( labels have ICFunctionScope ) - * - tags of structures or unions : NAMESPACE_TYPE_TAG - * - members of structures or unions ( members have ICCompositeTypeScope ) - * - all other identifiers : NAMESPACE_TYPE_OTHER - */ - public static final int NAMESPACE_TYPE_TAG = 0; - public static final int NAMESPACE_TYPE_OTHER = 1; - - /** - * add a binding to this scope - * @param binding - * @throws DOMException - */ - void addBinding( IBinding binding ) throws DOMException; - - /** - * remove the given binding from this scope - * @param binding - * @throws DOMException - */ - void removeBinding( IBinding binding ) throws DOMException; - - /** - * Get the binding that has previously been added to this scope that matches - * the given name and is in the appropriate namespace - * @param namespaceType : either NAMESPACE_TYPE_TAG or NAMESPACE_TYPE_OTHER - * @param name - * @return - * @throws DOMException - */ - public IBinding getBinding( int namespaceType, char [] name ) throws DOMException; + /** + * ISO C:99 6.2.3 there are seperate namespaces for various categories of + * identifiers: - label names ( labels have ICFunctionScope ) - tags of + * structures or unions : NAMESPACE_TYPE_TAG - members of structures or + * unions ( members have ICCompositeTypeScope ) - all other identifiers : + * NAMESPACE_TYPE_OTHER + */ + public static final int NAMESPACE_TYPE_TAG = 0; + + public static final int NAMESPACE_TYPE_OTHER = 1; + + /** + * add a binding to this scope + * + * @param binding + * @throws DOMException + */ + void addBinding(IBinding binding) throws DOMException; + + /** + * remove the given binding from this scope + * + * @param binding + * @throws DOMException + */ + void removeBinding(IBinding binding) throws DOMException; + + /** + * Get the binding that has previously been added to this scope that matches + * the given name and is in the appropriate namespace + * + * @param namespaceType : + * either NAMESPACE_TYPE_TAG or NAMESPACE_TYPE_OTHER + * @param name + * @return + * @throws DOMException + */ + public IBinding getBinding(int namespaceType, char[] name) + throws DOMException; }