From 76e962ee9b55f4f365d3146f8cd63d8607e82963 Mon Sep 17 00:00:00 2001 From: Sergey Prigogin Date: Thu, 5 Jan 2012 20:21:29 -0800 Subject: [PATCH] @Override annotations. --- .../cpp/ICPPASTCompositeTypeSpecifier.java | 13 ++-- .../dom/ast/cpp/ICPPASTVisibilityLabel.java | 13 ++-- .../parser/c/CASTCompositeTypeSpecifier.java | 72 +++++++++++-------- .../cpp/CPPASTCompositeTypeSpecifier.java | 68 +++++++++++------- 4 files changed, 97 insertions(+), 69 deletions(-) diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCompositeTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCompositeTypeSpecifier.java index 96ab919ceca..edc38b6d605 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCompositeTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTCompositeTypeSpecifier.java @@ -6,8 +6,8 @@ * http://www.eclipse.org/legal/epl-v10.html * * Contributors: - * John Camelon (IBM) - Initial API and implementation - * Markus Schorn (Wind River Systems) + * John Camelon (IBM) - Initial API and implementation + * Markus Schorn (Wind River Systems) *******************************************************************************/ package org.eclipse.cdt.core.dom.ast.cpp; @@ -22,10 +22,8 @@ import org.eclipse.cdt.core.dom.ast.IASTNode; * @noimplement This interface is not intended to be implemented by clients. */ public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifier, ICPPASTDeclSpecifier { - /** - * k_class C++ introduces the class concept for composite - * types. + * k_class C++ introduces the class concept for composite types. */ public static final int k_class = IASTCompositeTypeSpecifier.k_last + 1; @@ -52,15 +50,14 @@ public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifie * * @noimplement This interface is not intended to be implemented by clients. */ - public static interface ICPPASTBaseSpecifier extends IASTNode, IASTNameOwner, ICPPASTPackExpandable { - public static final ICPPASTBaseSpecifier[] EMPTY_BASESPECIFIER_ARRAY = new ICPPASTBaseSpecifier[0]; + public static interface ICPPASTBaseSpecifier extends IASTNode, IASTNameOwner, ICPPASTPackExpandable { + public static final ICPPASTBaseSpecifier[] EMPTY_BASESPECIFIER_ARRAY = {}; /** * Relation between base specifier and its name. */ public static final ASTNodeProperty NAME = new ASTNodeProperty( "ICPPASTBaseSpecifier.NAME - Name of base class"); //$NON-NLS-1$ - public static final int v_public = 1; public static final int v_protected = 2; diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTVisibilityLabel.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTVisibilityLabel.java index 6e4ece7cb26..23ba2025a7c 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTVisibilityLabel.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/core/dom/ast/cpp/ICPPASTVisibilityLabel.java @@ -6,7 +6,7 @@ * http://www.eclipse.org/legal/epl-v10.html * * Contributors: - * John Camelon (IBM) - Initial API and implementation + * John Camelon (IBM) - Initial API and implementation *******************************************************************************/ package org.eclipse.cdt.core.dom.ast.cpp; @@ -20,7 +20,6 @@ import org.eclipse.cdt.core.dom.ast.IASTDeclaration; * @noimplement This interface is not intended to be implemented by clients. */ public interface ICPPASTVisibilityLabel extends IASTDeclaration { - /** * v_public == public: */ @@ -37,28 +36,28 @@ public interface ICPPASTVisibilityLabel extends IASTDeclaration { public static final int v_private = 3; /** - * Get the visibility. + * Returns the visibility. * * @return int */ public int getVisibility(); /** - * Set visibility. + * Sets visibility. * - * @param visibility - * int + * @param visibility one of v_public, v_protected, v_private */ public void setVisibility(int visibility); - /** * @since 5.1 */ + @Override public ICPPASTVisibilityLabel copy(); /** * @since 5.3 */ + @Override public ICPPASTVisibilityLabel copy(CopyStyle style); } diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompositeTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompositeTypeSpecifier.java index 158a3edfe78..dba54022524 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompositeTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/c/CASTCompositeTypeSpecifier.java @@ -6,9 +6,9 @@ * http://www.eclipse.org/legal/epl-v10.html * * Contributors: - * John Camelon (IBM Rational Software) - Initial API and implementation - * Markus Schorn (Wind River Systems) - * Yuan Zhang / Beth Tibbitts (IBM Research) + * John Camelon (IBM Rational Software) - Initial API and implementation + * Markus Schorn (Wind River Systems) + * Yuan Zhang / Beth Tibbitts (IBM Research) *******************************************************************************/ package org.eclipse.cdt.internal.core.dom.parser.c; @@ -27,13 +27,12 @@ import org.eclipse.cdt.internal.core.dom.parser.IASTAmbiguityParent; */ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements ICASTCompositeTypeSpecifier, IASTAmbiguityParent { - private int fKey; private IASTName fName; - private IASTDeclaration[] fActiveDeclarations= null; - private IASTDeclaration [] fAllDeclarations = null; - private int fDeclarationsPos=-1; - private IScope fScope = null; + private IASTDeclaration[] fActiveDeclarations; + private IASTDeclaration[] fAllDeclarations; + private int fDeclarationsPos = -1; + private IScope fScope; public CASTCompositeTypeSpecifier() { } @@ -43,10 +42,12 @@ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements setName(name); } + @Override public CASTCompositeTypeSpecifier copy() { return copy(CopyStyle.withoutLocations); } + @Override public CASTCompositeTypeSpecifier copy(CopyStyle style) { CASTCompositeTypeSpecifier copy = new CASTCompositeTypeSpecifier(); copyCompositeTypeSpecifier(copy, style); @@ -60,24 +61,28 @@ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements copyBaseDeclSpec(copy); copy.setKey(fKey); copy.setName(fName == null ? null : fName.copy(style)); - for(IASTDeclaration member : getMembers()) + for (IASTDeclaration member : getMembers()) copy.addMemberDeclaration(member == null ? null : member.copy(style)); } - public int getKey() { + @Override + public int getKey() { return fKey; } - public void setKey(int key) { + @Override + public void setKey(int key) { assertNotFrozen(); this.fKey = key; } - public IASTName getName() { + @Override + public IASTName getName() { return fName; } - public void setName(IASTName name) { + @Override + public void setName(IASTName name) { assertNotFrozen(); this.fName = name; if (name != null) { @@ -86,51 +91,57 @@ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements } } + @Override public IASTDeclaration[] getMembers() { IASTDeclaration[] active= fActiveDeclarations; if (active == null) { - active = ASTQueries.extractActiveDeclarations(fAllDeclarations, fDeclarationsPos+1); + active = ASTQueries.extractActiveDeclarations(fAllDeclarations, fDeclarationsPos + 1); fActiveDeclarations= active; } return active; } + @Override public final IASTDeclaration[] getDeclarations(boolean includeInactive) { if (includeInactive) { - fAllDeclarations= (IASTDeclaration[]) ArrayUtil.removeNullsAfter(IASTDeclaration.class, fAllDeclarations, fDeclarationsPos); + fAllDeclarations= ArrayUtil.trimAt(IASTDeclaration.class, fAllDeclarations, + fDeclarationsPos); return fAllDeclarations; } return getMembers(); } - public void addMemberDeclaration(IASTDeclaration declaration) { + @Override + public void addMemberDeclaration(IASTDeclaration declaration) { assertNotFrozen(); if (declaration != null) { declaration.setParent(this); declaration.setPropertyInParent(MEMBER_DECLARATION); - fAllDeclarations = (IASTDeclaration[]) ArrayUtil.append(IASTDeclaration.class, fAllDeclarations, + fAllDeclarations = ArrayUtil.appendAt(IASTDeclaration.class, fAllDeclarations, ++fDeclarationsPos, declaration); fActiveDeclarations= null; } } - public void addDeclaration(IASTDeclaration declaration) { + @Override + public void addDeclaration(IASTDeclaration declaration) { addMemberDeclaration(declaration); } - - public IScope getScope() { - if( fScope == null ) - fScope = new CCompositeTypeScope( this ); + + @Override + public IScope getScope() { + if (fScope == null) + fScope = new CCompositeTypeScope(this); return fScope; } @Override - public boolean accept( ASTVisitor action ){ + public boolean accept(ASTVisitor action){ if (action.shouldVisitDeclSpecifiers) { switch (action.visit(this)) { - case ASTVisitor.PROCESS_ABORT : return false; - case ASTVisitor.PROCESS_SKIP : return true; - default : break; + case ASTVisitor.PROCESS_ABORT: return false; + case ASTVisitor.PROCESS_SKIP: return true; + default: break; } } if (fName != null && !fName.accept(action)) @@ -138,7 +149,8 @@ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements IASTDeclaration[] decls= getDeclarations(action.includeInactiveNodes); for (int i = 0; i < decls.length; i++) { - if (!decls[i].accept(action)) return false; + if (!decls[i].accept(action)) + return false; } if (action.shouldVisitDeclSpecifiers) { @@ -151,13 +163,15 @@ public class CASTCompositeTypeSpecifier extends CASTBaseDeclSpecifier implements return true; } + @Override public int getRoleForName(IASTName n) { - if( n == this.fName ) + if (n == this.fName) return r_definition; return r_unclear; } - public void replace(IASTNode child, IASTNode other) { + @Override + public void replace(IASTNode child, IASTNode other) { assert child.isActive() == other.isActive(); for (int i = 0; i <= fDeclarationsPos; ++i) { if (fAllDeclarations[i] == child) { diff --git a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompositeTypeSpecifier.java b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompositeTypeSpecifier.java index c7752367055..20ef93b2382 100644 --- a/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompositeTypeSpecifier.java +++ b/core/org.eclipse.cdt.core/parser/org/eclipse/cdt/internal/core/dom/parser/cpp/CPPASTCompositeTypeSpecifier.java @@ -6,8 +6,8 @@ * http://www.eclipse.org/legal/epl-v10.html * * Contributors: - * John Camelon (IBM) - Initial API and implementation - * Markus Schorn (Wind River Systems) + * John Camelon (IBM) - Initial API and implementation + * Markus Schorn (Wind River Systems) *******************************************************************************/ package org.eclipse.cdt.internal.core.dom.parser.cpp; @@ -27,17 +27,15 @@ import org.eclipse.cdt.internal.core.dom.parser.IASTAmbiguityParent; */ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier implements ICPPASTCompositeTypeSpecifier, IASTAmbiguityParent { - private int fKey; private IASTName fName; private CPPClassScope fScope; private IASTDeclaration[] fAllDeclarations; private IASTDeclaration[] fActiveDeclarations; - private int fDeclarationsPos=-1; - private ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[] baseSpecs = null; + private int fDeclarationsPos = -1; + private ICPPASTCompositeTypeSpecifier.ICPPASTBaseSpecifier[] baseSpecs; private int baseSpecsPos = -1; - private boolean fAmbiguitiesResolved= false; - + private boolean fAmbiguitiesResolved; public CPPASTCompositeTypeSpecifier() { } @@ -54,13 +52,15 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier fAmbiguitiesResolved= true; } + @Override public CPPASTCompositeTypeSpecifier copy() { return copy(CopyStyle.withoutLocations); } + @Override public CPPASTCompositeTypeSpecifier copy(CopyStyle style) { - CPPASTCompositeTypeSpecifier copy = new CPPASTCompositeTypeSpecifier(fKey, fName == null - ? null : fName.copy(style)); + CPPASTCompositeTypeSpecifier copy = + new CPPASTCompositeTypeSpecifier(fKey, fName == null ? null : fName.copy(style)); copyBaseDeclSpec(copy); for (IASTDeclaration member : getMembers()) copy.addMemberDeclaration(member == null ? null : member.copy(style)); @@ -73,35 +73,43 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier return copy; } - public ICPPASTBaseSpecifier[] getBaseSpecifiers() { - if( baseSpecs == null ) return ICPPASTBaseSpecifier.EMPTY_BASESPECIFIER_ARRAY; - baseSpecs = (ICPPASTBaseSpecifier[]) ArrayUtil.removeNullsAfter( ICPPASTBaseSpecifier.class, baseSpecs, baseSpecsPos ); + @Override + public ICPPASTBaseSpecifier[] getBaseSpecifiers() { + if (baseSpecs == null) + return ICPPASTBaseSpecifier.EMPTY_BASESPECIFIER_ARRAY; + baseSpecs = ArrayUtil.trimAt(ICPPASTBaseSpecifier.class, baseSpecs, baseSpecsPos); return baseSpecs; } - public void addBaseSpecifier(ICPPASTBaseSpecifier baseSpec) { + @Override + public void addBaseSpecifier(ICPPASTBaseSpecifier baseSpec) { assertNotFrozen(); if (baseSpec != null) { baseSpec.setParent(this); baseSpec.setPropertyInParent(BASE_SPECIFIER); - baseSpecs = (ICPPASTBaseSpecifier[]) ArrayUtil.append( ICPPASTBaseSpecifier.class, baseSpecs, ++baseSpecsPos, baseSpec ); + baseSpecs = ArrayUtil.appendAt(ICPPASTBaseSpecifier.class, baseSpecs, ++baseSpecsPos, + baseSpec); } } - public int getKey() { + @Override + public int getKey() { return fKey; } - public void setKey(int key) { + @Override + public void setKey(int key) { assertNotFrozen(); fKey = key; } - public IASTName getName() { + @Override + public IASTName getName() { return fName; } - public void setName(IASTName name) { + @Override + public void setName(IASTName name) { assertNotFrozen(); this.fName = name; if (name != null) { @@ -110,23 +118,27 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier } } + @Override public IASTDeclaration[] getMembers() { IASTDeclaration[] active= fActiveDeclarations; if (active == null) { - active = ASTQueries.extractActiveDeclarations(fAllDeclarations, fDeclarationsPos+1); + active = ASTQueries.extractActiveDeclarations(fAllDeclarations, fDeclarationsPos + 1); fActiveDeclarations= active; } return active; } + @Override public final IASTDeclaration[] getDeclarations(boolean includeInactive) { if (includeInactive) { - fAllDeclarations= (IASTDeclaration[]) ArrayUtil.removeNullsAfter(IASTDeclaration.class, fAllDeclarations, fDeclarationsPos); + fAllDeclarations= ArrayUtil.trimAt(IASTDeclaration.class, fAllDeclarations, + fDeclarationsPos); return fAllDeclarations; } return getMembers(); } + @Override public void addMemberDeclaration(IASTDeclaration decl) { if (decl == null) return; @@ -138,15 +150,17 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier assertNotFrozen(); decl.setParent(this); decl.setPropertyInParent(decl instanceof ICPPASTVisibilityLabel ? VISIBILITY_LABEL : MEMBER_DECLARATION); - fAllDeclarations = (IASTDeclaration[]) ArrayUtil.append(IASTDeclaration.class, fAllDeclarations, + fAllDeclarations = ArrayUtil.appendAt(IASTDeclaration.class, fAllDeclarations, ++fDeclarationsPos, decl); fActiveDeclarations= null; } - public final void addDeclaration(IASTDeclaration decl) { + @Override + public final void addDeclaration(IASTDeclaration decl) { addMemberDeclaration(decl); } + @Override public ICPPClassScope getScope() { if (fScope == null) { fScope = new CPPClassScope(this); @@ -172,12 +186,14 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier ICPPASTBaseSpecifier[] bases = getBaseSpecifiers(); for (int i = 0; i < bases.length; i++) { - if (!bases[i].accept(action)) return false; + if (!bases[i].accept(action)) + return false; } IASTDeclaration[] decls = getDeclarations(action.includeInactiveNodes); for (int i = 0; i < decls.length; i++) { - if (!decls[i].accept(action)) return false; + if (!decls[i].accept(action)) + return false; } if (action.shouldVisitDeclSpecifiers && action.leave(this) == ASTVisitor.PROCESS_ABORT) @@ -186,12 +202,14 @@ public class CPPASTCompositeTypeSpecifier extends CPPASTBaseDeclSpecifier return true; } + @Override public int getRoleForName(IASTName name) { - if( name == this.fName ) + if (name == this.fName) return r_definition; return r_unclear; } + @Override public void replace(IASTNode child, IASTNode other) { assert child.isActive() == other.isActive(); for (int i = 0; i <= fDeclarationsPos; ++i) {