diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTElaboratedTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTElaboratedTypeSpecifier.java index cae2f343f4e..27a294e2632 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTElaboratedTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTElaboratedTypeSpecifier.java @@ -10,21 +10,57 @@ package org.eclipse.cdt.core.dom.ast; /** + * This represents an elaborated type specifier in the C & C++ language grammar. + * * @author jcamelon */ public interface IASTElaboratedTypeSpecifier extends IASTDeclSpecifier { - //these should agree with IASTCompositeType keys + + /** + * Enumeration. + */ public static final int k_enum = 0; + /** + * Structure. + */ public static final int k_struct = 1; + /** + * Union. + */ public static final int k_union = 2; + /** + * Constant for extensibility in sub-interfaces. + */ public static final int k_last = k_union; + /** + * Get the kind. + * + * @return int (kind). + */ public int getKind(); + /** + * Set the kind. + * @param value int (kind) + */ public void setKind( int value ); + /** + * TYPE_NAME describes the relationship between IASTElaboratedTypeSpecifier and IASTName. + */ public static final ASTNodeProperty TYPE_NAME = new ASTNodeProperty( "Type Name"); //$NON-NLS-1$ + /** + * Get the name. + * + * @return IASTName + */ public IASTName getName(); + /** + * Set the name. + * + * @param name IASTName + */ public void setName( IASTName name ); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTEnumerationSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTEnumerationSpecifier.java index eaf320a9691..d02934932ec 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTEnumerationSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTEnumerationSpecifier.java @@ -11,32 +11,90 @@ package org.eclipse.cdt.core.dom.ast; /** + * This interface represents enumerations in C and C++. + * * @author jcamelon */ public interface IASTEnumerationSpecifier extends IASTDeclSpecifier { /** + * This interface represents an enumerator member of an enum specifier. * @author jcamelon */ public interface IASTEnumerator extends IASTNode { + /** + * Empty array (constant). + */ public static final IASTEnumerator[] EMPTY_ENUMERATOR_ARRAY = new IASTEnumerator[0]; + /** + * ENUMERATOR_NAME describes the relationship between IASTEnumerator and IASTName. + */ public static final ASTNodeProperty ENUMERATOR_NAME = new ASTNodeProperty( "Enumerator Name"); //$NON-NLS-1$ + /** + * Set the enumerator's name. + * + * @param name + */ public void setName( IASTName name ); + /** + * Get the enumerator's name. + * + * @return IASTName + */ public IASTName getName(); + /** + * ENUMERATOR_VALUE describes the relationship between IASTEnumerator and IASTExpression. + */ public static final ASTNodeProperty ENUMERATOR_VALUE = new ASTNodeProperty( "Enumerator Value"); //$NON-NLS-1$ + /** + * Set enumerator value. + * + * @param expression + */ public void setValue( IASTExpression expression ); + /** + * Get enumerator value. + * + * @return IASTExpression value + */ public IASTExpression getValue(); } + + /** + * ENUMERATOR describes the relationship between IASTEnumerationSpecifier and the nested IASTEnumerators. + */ public static final ASTNodeProperty ENUMERATOR = new ASTNodeProperty( "Enumerator" ); //$NON-NLS-1$ + /** + * Add an enumerator. + * + * @param enumerator IASTEnumerator + */ public void addEnumerator( IASTEnumerator enumerator ); + /** + * Get enumerators. + * @return IASTEnumerator [] array + */ public IASTEnumerator[] getEnumerators(); + /** + * ENUMERATION_NAME describes the relationship between IASTEnumerationSpecifier and its IASTName. + */ public static final ASTNodeProperty ENUMERATION_NAME = new ASTNodeProperty( "Enum Name"); //$NON-NLS-1$ + /** + * Set the enum's name. + * + * @param name + */ public void setName( IASTName name ); + /** + * Get the enum's name. + * + * @return + */ public IASTName getName(); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpression.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpression.java index 831a9d070e7..c5539b56afb 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpression.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpression.java @@ -16,5 +16,8 @@ package org.eclipse.cdt.core.dom.ast; * @author Doug Schaefer */ public interface IASTExpression extends IASTNode { + /** + * Empty expression array. + */ public static final IASTExpression [] EMPTY_EXPRESSION_ARRAY = new IASTExpression[0]; } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionList.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionList.java index b0b47224f79..056f2117662 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionList.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionList.java @@ -11,13 +11,28 @@ package org.eclipse.cdt.core.dom.ast; /** + * Expression List (Comma separated list of expressions). + * * @author jcamelon */ public interface IASTExpressionList extends IASTExpression { + /** + * NESTED_EXPRESSION describes the relationship between IASTExpressionList and the nested IASTExpressions. + */ public static final ASTNodeProperty NESTED_EXPRESSION = new ASTNodeProperty( "Nested Expression"); //$NON-NLS-1$ + /** + * Get nested expressions. + * + * @return IASTExpression [] nested expressions + */ public IASTExpression [] getExpressions(); + /** + * Add nested expression. + * + * @param expression IASTExpression value to be added. + */ public void addExpression( IASTExpression expression ); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionStatement.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionStatement.java index d3499cb8279..e74b523d1c3 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionStatement.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/IASTExpressionStatement.java @@ -12,10 +12,15 @@ package org.eclipse.cdt.core.dom.ast; /** + * Expression statement. + * * @author Doug Schaefer */ public interface IASTExpressionStatement extends IASTStatement { + /** + * EXPRESSION is the relationship between an IASTExpressionStatement and an IASTExpression. + */ public static final ASTNodeProperty EXPFRESSION = new ASTNodeProperty( "Expression"); //$NON-NLS-1$ /** * Get the expression in this statement. @@ -24,5 +29,10 @@ public interface IASTExpressionStatement extends IASTStatement { */ public IASTExpression getExpression(); + /** + * Set the expression statement. + * + * @param expression + */ public void setExpression( IASTExpression expression ); }