1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-29 19:45:01 +02:00

Bug 337937: CopyLocation for copied AST-Node

https://bugs.eclipse.org/bugs/show_bug.cgi?id=337937
This commit is contained in:
Emanuel Graf 2011-03-07 07:26:26 +00:00
parent c2b14277a3
commit 654e12094a
307 changed files with 2767 additions and 812 deletions

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2008 Institute for Software, HSR Hochschule fuer Technik
* Copyright (c) 2008, 2011 Institute for Software, HSR Hochschule fuer Technik
* Rapperswil, University of applied sciences and others
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
@ -142,8 +142,13 @@ public class NodeCommentMapTest extends TestCase {
}
//not used
public boolean isBlockComment() {return false;}
public IASTNode copy() {
return null;
}
public IASTNode copy(CopyStyle style) {
return null;
}
}
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -36,4 +36,9 @@ public interface IASTASMDeclaration extends IASTDeclaration {
* @since 5.1
*/
public IASTASMDeclaration copy();
/**
* @since 5.3
*/
public IASTASMDeclaration copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -45,4 +45,9 @@ public interface IASTArrayDeclarator extends IASTDeclarator {
*/
public IASTArrayDeclarator copy();
/**
* @since 5.3
*/
public IASTArrayDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -50,4 +50,9 @@ public interface IASTArrayModifier extends IASTNode {
* @since 5.1
*/
public IASTArrayModifier copy();
/**
* @since 5.3
*/
public IASTArrayModifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2010 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -29,6 +29,11 @@ public interface IASTArraySubscriptExpression extends IASTExpression {
*/
IASTArraySubscriptExpression copy();
/**
* @since 5.3
*/
IASTArraySubscriptExpression copy(CopyStyle style);
/**
* Get the expression that represents the array
*

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -272,4 +272,9 @@ public interface IASTBinaryExpression extends IASTExpression {
* @since 5.1
*/
public IASTBinaryExpression copy();
/**
* @since 5.3
*/
public IASTBinaryExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ public interface IASTBreakStatement extends IASTStatement {
* @since 5.1
*/
public IASTBreakStatement copy();
/**
* @since 5.3
*/
public IASTBreakStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -45,4 +45,9 @@ public interface IASTCaseStatement extends IASTStatement {
* @since 5.1
*/
public IASTCaseStatement copy();
/**
* @since 5.3
*/
public IASTCaseStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -88,4 +88,9 @@ public interface IASTCastExpression extends IASTExpression {
* @since 5.1
*/
public IASTCastExpression copy();
/**
* @since 5.3
*/
public IASTCastExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -53,4 +53,9 @@ public interface IASTCompoundStatement extends IASTStatement {
* @since 5.1
*/
public IASTCompoundStatement copy();
/**
* @since 5.3
*/
public IASTCompoundStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -93,4 +93,9 @@ public interface IASTConditionalExpression extends IASTExpression {
*/
public IASTConditionalExpression copy();
/**
* @since 5.3
*/
public IASTConditionalExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ public interface IASTContinueStatement extends IASTStatement {
* @since 5.1
*/
public IASTContinueStatement copy();
/**
* @since 5.3
*/
public IASTContinueStatement copy(CopyStyle style);
}

View file

@ -0,0 +1,23 @@
/*******************************************************************************
* Copyright (c) 2011 Institute for Software, HSR Hochschule fuer Technik
* Rapperswil, University of applied sciences and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Institute for Software (IFS)- initial API and implementation
******************************************************************************/
package org.eclipse.cdt.core.dom.ast;
/**
* @author Emanuel Graf IFS
* @since 5.3
*
*/
public interface IASTCopyLocation extends IASTNodeLocation {
public IASTNode getOriginalNode();
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -54,6 +54,11 @@ public interface IASTDeclSpecifier extends IASTNode {
*/
public IASTDeclSpecifier copy();
/**
* @since 5.3
*/
public IASTDeclSpecifier copy(CopyStyle style);
/**
* Not allowed on frozen ast.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTDeclaration extends IASTNode {
* @since 5.1
*/
public IASTDeclaration copy();
/**
* @since 5.3
*/
public IASTDeclaration copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -44,4 +44,9 @@ public interface IASTDeclarationStatement extends IASTStatement {
*/
public IASTDeclarationStatement copy();
/**
* @since 5.3
*/
public IASTDeclarationStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -113,4 +113,9 @@ public interface IASTDeclarator extends IASTNode, IASTNameOwner {
*/
public IASTDeclarator copy();
/**
* @since 5.3
*/
public IASTDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -25,4 +25,9 @@ public interface IASTDefaultStatement extends IASTStatement {
* @since 5.1
*/
public IASTDefaultStatement copy();
/**
* @since 5.3
*/
public IASTDefaultStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -68,4 +68,9 @@ public interface IASTDoStatement extends IASTStatement {
*/
public IASTDoStatement copy();
/**
* @since 5.3
*/
public IASTDoStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -77,6 +77,11 @@ public interface IASTEnumerationSpecifier extends IASTDeclSpecifier, IASTNameOwn
*/
public IASTEnumerator copy();
/**
* @since 5.3
*/
public IASTEnumerator copy(CopyStyle style);
}
/**
@ -125,4 +130,9 @@ public interface IASTEnumerationSpecifier extends IASTDeclSpecifier, IASTNameOwn
* @since 5.1
*/
public IASTEnumerationSpecifier copy();
/**
* @since 5.3
*/
public IASTEnumerationSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -74,4 +74,9 @@ public interface IASTExpression extends IASTInitializerClause {
* @since 5.1
*/
public IASTExpression copy();
/**
* @since 5.3
*/
public IASTExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -45,4 +45,9 @@ public interface IASTExpressionList extends IASTExpression {
* @since 5.1
*/
public IASTExpressionList copy();
/**
* @since 5.3
*/
public IASTExpressionList copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -43,4 +43,9 @@ public interface IASTExpressionStatement extends IASTStatement {
* @since 5.1
*/
public IASTExpressionStatement copy();
/**
* @since 5.3
*/
public IASTExpressionStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -46,4 +46,9 @@ public interface IASTFieldDeclarator extends IASTDeclarator {
* @since 5.1
*/
public IASTFieldDeclarator copy();
/**
* @since 5.3
*/
public IASTFieldDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -85,4 +85,9 @@ public interface IASTFieldReference extends IASTExpression, IASTNameOwner {
*/
public IASTFieldReference copy();
/**
* @since 5.3
*/
public IASTFieldReference copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -117,4 +117,9 @@ public interface IASTForStatement extends IASTStatement {
* @since 5.1
*/
public IASTForStatement copy();
/**
* @since 5.3
*/
public IASTForStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2010 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -45,6 +45,11 @@ public interface IASTFunctionCallExpression extends IASTExpression {
*/
public IASTFunctionCallExpression copy();
/**
* @since 5.3
*/
public IASTFunctionCallExpression copy(CopyStyle style);
/**
* Not allowed on frozen ast.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTFunctionDeclarator extends IASTDeclarator {
* @since 5.1
*/
public IASTFunctionDeclarator copy();
/**
* @since 5.3
*/
public IASTFunctionDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -104,4 +104,9 @@ public interface IASTFunctionDefinition extends IASTDeclaration {
* @since 5.1
*/
public IASTFunctionDefinition copy();
/**
* @since 5.3
*/
public IASTFunctionDefinition copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -40,4 +40,9 @@ public interface IASTGotoStatement extends IASTStatement, IASTNameOwner {
*/
public IASTGotoStatement copy();
/**
* @since 5.3
*/
public IASTGotoStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -43,4 +43,9 @@ public interface IASTIdExpression extends IASTExpression, IASTNameOwner {
* @since 5.1
*/
public IASTIdExpression copy();
/**
* @since 5.3
*/
public IASTIdExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -89,4 +89,9 @@ public interface IASTIfStatement extends IASTStatement {
* @since 5.1
*/
public IASTIfStatement copy();
/**
* @since 5.3
*/
public IASTIfStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -27,4 +27,9 @@ public interface IASTInitializer extends IASTNode {
* @since 5.1
*/
public IASTInitializer copy();
/**
* @since 5.3
*/
public IASTInitializer copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2010 Wind River Systems, Inc. and others.
* Copyright (c) 2011 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -19,4 +19,9 @@ package org.eclipse.cdt.core.dom.ast;
public interface IASTInitializerClause extends IASTNode {
IASTInitializerClause copy();
/**
* @since 5.3
*/
IASTInitializerClause copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -45,4 +45,9 @@ public interface IASTInitializerExpression extends IASTEqualsInitializer {
* @since 5.1
*/
public IASTInitializerExpression copy();
/**
* @since 5.3
*/
public IASTInitializerExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -51,6 +51,11 @@ public interface IASTInitializerList extends IASTInitializer, IASTInitializerCla
*/
public IASTInitializerList copy();
/**
* @since 5.3
*/
public IASTInitializerList copy(CopyStyle style);
/**
* @deprecated Replaced by {@link #getClauses()}.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -48,4 +48,9 @@ public interface IASTLabelStatement extends IASTStatement, IASTNameOwner {
*/
public IASTLabelStatement copy();
/**
* @since 5.3
*/
public IASTLabelStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -98,7 +98,12 @@ public interface IASTLiteralExpression extends IASTExpression {
public IASTLiteralExpression copy();
/**
* @deprecated Replaced by {@link #setValue(char[])}.
* @since 5.3
*/
public IASTLiteralExpression copy(CopyStyle style);
/**
* @deprecated Replaced by {@link #setValue(char[])}.
*/
@Deprecated
public void setValue(String value);

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -103,6 +103,11 @@ public interface IASTName extends IASTNode, IName {
*/
public IASTName copy();
/**
* @since 5.3
*/
public IASTName copy(CopyStyle style);
/**
* Set the semantic object for this name to be the given binding
* @noreference This method is not intended to be referenced by clients.

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -21,6 +21,23 @@ import org.eclipse.cdt.core.parser.IToken;
* @noextend This interface is not intended to be extended by clients.
*/
public interface IASTNode {
/**
* @since 5.3
*/
public enum CopyStyle {
/**
* Copy without location, this copy is independed of the index an can be shared.
*/
withoutLocations,
/**
* The copied node has a {@link IASTCopyLocation} linking the copy to the origianl node. If the index
* was supplied creating the original AST, the caller has to hold a read lock on it. The returned copy
* is valid only while the read lock is being held and should not be accessed after releasing the
* lock.
*/
withLocations
}
public static final IASTNode[] EMPTY_NODE_ARRAY = new IASTNode[0];
@ -215,8 +232,7 @@ public interface IASTNode {
public boolean isActive();
/**
* Returns a mutable copy of the tree rooted at this node.
* The following postconditions hold:
* Returns a mutable copy of the tree rooted at this node. The following postconditions hold:
*
* <code>
* copy.getParent() == null
@ -226,11 +242,35 @@ public interface IASTNode {
*
* Preprocessor nodes do not currently support being copied.
*
* Implicit name nodes are not copied, instead they can be regenerated
* if required.
* Implicit name nodes are not copied, instead they can be regenerated if required.
*
* Calling this method is equivalent
*
* @since 5.1
* @throws UnsupportedOperationException if this node or one of its descendants does not support copying
* @throws UnsupportedOperationException
* if this node or one of its descendants does not support copying
*/
public IASTNode copy();
/**
* Returns a mutable copy of the tree rooted at this node. The following postconditions hold:
*
* <code>
* copy.getParent() == null
* copy.getPropertyInParent() == null
* copy.isFrozen() == false
* </code>
*
* Preprocessor nodes do not currently support being copied.
*
* Implicit name nodes are not copied, instead they can be regenerated if required.
*
* @param style
* {@link CopyStyle} create a copy with or without locations. Please see {@link CopyStyle} for
* restrictions on copies with Locations.
* @since 5.3
* @throws UnsupportedOperationException
* if this node or one of its descendants does not support copying
*/
public IASTNode copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ public interface IASTNullStatement extends IASTStatement {
* @since 5.1
*/
public IASTNullStatement copy();
/**
* @since 5.3
*/
public IASTNullStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -72,4 +72,9 @@ public interface IASTParameterDeclaration extends IASTNode {
* @since 5.1
*/
public IASTParameterDeclaration copy();
/**
* @since 5.3
*/
public IASTParameterDeclaration copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -54,4 +54,9 @@ public interface IASTPointer extends IASTPointerOperator {
* @since 5.1
*/
public IASTPointer copy();
/**
* @since 5.3
*/
public IASTPointer copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -25,4 +25,9 @@ public interface IASTPointerOperator extends IASTNode {
* @since 5.1
*/
public IASTPointerOperator copy();
/**
* @since 5.3
*/
public IASTPointerOperator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -24,4 +24,9 @@ public interface IASTProblem extends IProblem, IASTNode {
* @since 5.1
*/
public IASTProblem copy();
/**
* @since 5.3
*/
public IASTProblem copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTProblemDeclaration extends IASTDeclaration, IASTProblemHold
* @since 5.1
*/
public IASTProblemDeclaration copy();
/**
* @since 5.3
*/
public IASTProblemDeclaration copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTProblemExpression extends IASTExpression, IASTProblemHolder
* @since 5.1
*/
public IASTProblemExpression copy();
/**
* @since 5.3
*/
public IASTProblemExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTProblemStatement extends IASTStatement, IASTProblemHolder {
* @since 5.1
*/
public IASTProblemStatement copy();
/**
* @since 5.3
*/
public IASTProblemStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -23,4 +23,9 @@ public interface IASTProblemTypeId extends IASTTypeId, IASTProblemHolder {
* @since 5.1
*/
public IASTProblemTypeId copy();
/**
* @since 5.3
*/
public IASTProblemTypeId copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -49,4 +49,9 @@ public interface IASTReturnStatement extends IASTStatement {
* @since 5.1
*/
public IASTReturnStatement copy();
/**
* @since 5.3
*/
public IASTReturnStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -70,4 +70,9 @@ public interface IASTSimpleDeclaration extends IASTDeclaration {
* @since 5.1
*/
public IASTSimpleDeclaration copy();
/**
* @since 5.3
*/
public IASTSimpleDeclaration copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -68,4 +68,9 @@ public interface IASTStandardFunctionDeclarator extends IASTFunctionDeclarator {
* @since 5.1
*/
public IASTStandardFunctionDeclarator copy();
/**
* @since 5.3
*/
public IASTStandardFunctionDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -27,4 +27,9 @@ public interface IASTStatement extends IASTNode {
*/
public IASTStatement copy();
/**
* @since 5.3
*/
public IASTStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -69,4 +69,9 @@ public interface IASTSwitchStatement extends IASTStatement {
* @since 5.1
*/
public IASTSwitchStatement copy();
/**
* @since 5.3
*/
public IASTSwitchStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -319,4 +319,14 @@ public interface IASTTranslationUnit extends IASTDeclarationListOwner, IAdaptabl
* @since 5.1
*/
public IASTTranslationUnit copy();
/**
* Returns a copy of the AST, however the ILocationResolver and the preprocessor nodes are not copied.
*
* @see IASTNode#copy()
*
* @noreference This method is not intended to be referenced by clients.
* @since 5.3
*/
public IASTTranslationUnit copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -64,4 +64,9 @@ public interface IASTTypeId extends IASTNode {
* @since 5.1
*/
public IASTTypeId copy();
/**
* @since 5.3
*/
public IASTTypeId copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -80,4 +80,9 @@ public interface IASTTypeIdExpression extends IASTExpression {
* @since 5.1
*/
public IASTTypeIdExpression copy();
/**
* @since 5.3
*/
public IASTTypeIdExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -163,4 +163,9 @@ public interface IASTUnaryExpression extends IASTExpression {
* @since 5.1
*/
public IASTUnaryExpression copy();
/**
* @since 5.3
*/
public IASTUnaryExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -63,4 +63,9 @@ public interface IASTWhileStatement extends IASTStatement {
* @since 5.1
*/
public IASTWhileStatement copy();
/**
* @since 5.3
*/
public IASTWhileStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -48,4 +48,9 @@ public interface ICASTArrayDesignator extends ICASTDesignator {
* @since 5.1
*/
public ICASTArrayDesignator copy();
/**
* @since 5.3
*/
public ICASTArrayDesignator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -100,4 +100,9 @@ public interface ICASTArrayModifier extends IASTArrayModifier {
* @since 5.1
*/
public ICASTArrayModifier copy();
/**
* @since 5.3
*/
public ICASTArrayModifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -24,4 +24,9 @@ public interface ICASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifier,
* @since 5.1
*/
public ICASTCompositeTypeSpecifier copy();
/**
* @since 5.3
*/
public ICASTCompositeTypeSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -59,6 +59,11 @@ public interface ICASTDesignatedInitializer extends IASTInitializer, IASTInitial
*/
public ICASTDesignatedInitializer copy();
/**
* @since 5.3
*/
public ICASTDesignatedInitializer copy(CopyStyle style);
/**
* @deprecated Replaced by {@link #getOperand()};
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -24,4 +24,9 @@ public interface ICASTDesignator extends IASTNode {
* @since 5.1
*/
public ICASTDesignator copy();
/**
* @since 5.3
*/
public ICASTDesignator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -26,4 +26,9 @@ public interface ICASTElaboratedTypeSpecifier extends
* @since 5.1
*/
public ICASTElaboratedTypeSpecifier copy();
/**
* @since 5.3
*/
public ICASTElaboratedTypeSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -25,4 +25,9 @@ public interface ICASTEnumerationSpecifier extends ICASTDeclSpecifier,
* @since 5.1
*/
public ICASTEnumerationSpecifier copy();
/**
* @since 5.3
*/
public ICASTEnumerationSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -47,4 +47,9 @@ public interface ICASTFieldDesignator extends ICASTDesignator {
* @since 5.1
*/
public ICASTFieldDesignator copy();
/**
* @since 5.3
*/
public ICASTFieldDesignator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2010 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -25,4 +25,9 @@ public interface ICASTPointer extends IASTPointer {
* @since 5.1
*/
public ICASTPointer copy();
/**
* @since 5.3
*/
public ICASTPointer copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -26,6 +26,11 @@ public interface ICASTSimpleDeclSpecifier extends IASTSimpleDeclSpecifier, ICAST
*/
public ICASTSimpleDeclSpecifier copy();
/**
* @since 5.3
*/
public ICASTSimpleDeclSpecifier copy(CopyStyle style);
/**
* @deprecated Replaced by {@link IASTSimpleDeclSpecifier#t_bool}.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -28,4 +28,9 @@ public interface ICASTTypeIdInitializerExpression extends IASTTypeIdInitializerE
* @since 5.1
*/
public ICASTTypeIdInitializerExpression copy();
/**
* @since 5.3
*/
public ICASTTypeIdInitializerExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -25,4 +25,9 @@ public interface ICASTTypedefNameSpecifier extends IASTNamedTypeSpecifier, ICAST
* @since 5.1
*/
public ICASTTypedefNameSpecifier copy();
/**
* @since 5.3
*/
public ICASTTypedefNameSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2009, 2010 IBM Corporation and others.
* Copyright (c) 2009, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ import org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner;
public interface ICPPASTArraySubscriptExpression extends IASTArraySubscriptExpression, IASTImplicitNameOwner {
public ICPPASTArraySubscriptExpression copy();
/**
* @since 5.3
*/
public ICPPASTArraySubscriptExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -43,4 +43,9 @@ public interface ICPPASTBinaryExpression extends IASTBinaryExpression, IASTImpli
* @since 5.1
*/
public ICPPASTBinaryExpression copy();
/**
* @since 5.3
*/
public ICPPASTBinaryExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2010 Wind River Systems, Inc. and others.
* Copyright (c) 2010, 2011 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -26,6 +26,8 @@ public interface ICPPASTCapture extends IASTNode, ICPPASTPackExpandable {
ICPPASTCapture copy();
ICPPASTCapture copy(CopyStyle style);
/**
* Returns whether the capture uses a leading ampersand.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -79,4 +79,9 @@ public interface ICPPASTCatchHandler extends IASTStatement {
* @since 5.1
*/
public ICPPASTCatchHandler copy();
/**
* @since 5.3
*/
public ICPPASTCatchHandler copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -86,6 +86,11 @@ public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifie
*/
public ICPPASTBaseSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTBaseSpecifier copy(CopyStyle style);
/**
* Sets the name for this specifier, not allowed on frozen AST.
*/
@ -126,4 +131,9 @@ public interface ICPPASTCompositeTypeSpecifier extends IASTCompositeTypeSpecifie
* @since 5.1
*/
public ICPPASTCompositeTypeSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTCompositeTypeSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -54,6 +54,11 @@ public interface ICPPASTConstructorChainInitializer extends IASTInitializer, ICP
*/
public ICPPASTConstructorChainInitializer copy();
/**
* @since 5.3
*/
public ICPPASTConstructorChainInitializer copy(CopyStyle style);
/**
* Not allowed on frozen ast.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -13,8 +13,8 @@ package org.eclipse.cdt.core.dom.ast.cpp;
import org.eclipse.cdt.core.dom.ast.ASTNodeProperty;
import org.eclipse.cdt.core.dom.ast.IASTExpression;
import org.eclipse.cdt.core.dom.ast.IASTInitializerClause;
import org.eclipse.cdt.core.dom.ast.IASTInitializer;
import org.eclipse.cdt.core.dom.ast.IASTInitializerClause;
import org.eclipse.cdt.core.dom.ast.IASTInitializerList;
/**
@ -44,6 +44,11 @@ public interface ICPPASTConstructorInitializer extends IASTInitializer {
*/
public ICPPASTConstructorInitializer copy();
/**
* @since 5.3
*/
public ICPPASTConstructorInitializer copy(CopyStyle style);
/**
* Not allowed on frozen ast.

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005, 2009 IBM Corporation and others.
* Copyright (c) 2005, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -43,4 +43,9 @@ public interface ICPPASTConversionName extends IASTName {
* @since 5.1
*/
public ICPPASTConversionName copy();
/**
* @since 5.3
*/
public ICPPASTConversionName copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -72,6 +72,11 @@ public interface ICPPASTDeclSpecifier extends IASTDeclSpecifier {
*/
public ICPPASTDeclSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTDeclSpecifier copy(CopyStyle style);
/**
* @deprecated All constants must be defined in {@link IASTDeclSpecifier}
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -78,4 +78,9 @@ public interface ICPPASTDeleteExpression extends IASTExpression, IASTImplicitNam
*/
public ICPPASTDeleteExpression copy();
/**
* @since 5.3
*/
public ICPPASTDeleteExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -36,4 +36,9 @@ public interface ICPPASTElaboratedTypeSpecifier extends
*/
public ICPPASTElaboratedTypeSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTElaboratedTypeSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2010 Wind River Systems, Inc. and others.
* Copyright (c) 2010, 2011 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -27,6 +27,11 @@ public interface ICPPASTEnumerationSpecifier extends IASTEnumerationSpecifier, I
public ICPPASTEnumerationSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTEnumerationSpecifier copy(CopyStyle style);
/**
* Not allowed on frozen ast.
*/

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -65,8 +65,14 @@ public interface ICPPASTExplicitTemplateInstantiation extends IASTDeclaration {
*/
public ICPPASTExplicitTemplateInstantiation copy();
/**
* @since 5.3
*/
public ICPPASTExplicitTemplateInstantiation copy(CopyStyle style);
/**
* Returns {@link #STATIC}, {@link #INLINE}, {@link #EXTERN}, or <code>0</code>.
*
* @since 5.2
*/
public int getModifier();

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2009, 2010 IBM Corporation and others.
* Copyright (c) 2009, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ import org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner;
public interface ICPPASTExpressionList extends IASTExpressionList, IASTImplicitNameOwner {
public ICPPASTExpressionList copy();
/**
* @since 5.3
*/
public ICPPASTExpressionList copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -40,4 +40,9 @@ public interface ICPPASTFieldReference extends IASTFieldReference, IASTImplicitN
* @since 5.1
*/
public ICPPASTFieldReference copy();
/**
* @since 5.3
*/
public ICPPASTFieldReference copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/**********************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -29,4 +29,9 @@ public interface ICPPASTForStatement extends IASTForStatement {
* @since 5.1
*/
public ICPPASTForStatement copy();
/**
* @since 5.3
*/
public ICPPASTForStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2009, 2010 IBM Corporation and others.
* Copyright (c) 2009, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ import org.eclipse.cdt.core.dom.ast.IASTImplicitNameOwner;
public interface ICPPASTFunctionCallExpression extends IASTFunctionCallExpression, IASTImplicitNameOwner {
ICPPASTFunctionCallExpression copy();
/**
* @since 5.3
*/
ICPPASTFunctionCallExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -137,4 +137,9 @@ public interface ICPPASTFunctionDeclarator extends IASTStandardFunctionDeclarato
* @since 5.1
*/
public ICPPASTFunctionDeclarator copy();
/**
* @since 5.3
*/
public ICPPASTFunctionDeclarator copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2008, 2010 Wind River Systems, Inc. and others.
* Copyright (c) 2008, 2011 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -44,6 +44,11 @@ public interface ICPPASTFunctionDefinition extends IASTFunctionDefinition {
*/
public ICPPASTFunctionDefinition copy();
/**
* @since 5.3
*/
public ICPPASTFunctionDefinition copy(CopyStyle style);
/**
* Make this a defaulted function definition, e.g.: C::C() = default;
* @since 5.3

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -35,4 +35,9 @@ public interface ICPPASTIfStatement extends IASTIfStatement {
* @since 5.1
*/
public ICPPASTIfStatement copy();
/**
* @since 5.3
*/
public ICPPASTIfStatement copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2009, 2010 Wind River Systems, Inc. and others.
* Copyright (c) 2009, 2011 Wind River Systems, Inc. and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -22,4 +22,9 @@ import org.eclipse.cdt.core.dom.ast.IASTInitializerList;
public interface ICPPASTInitializerList extends IASTInitializerList, ICPPASTPackExpandable {
ICPPASTInitializerList copy();
/**
* @since 5.3
*/
ICPPASTInitializerList copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -63,4 +63,9 @@ public interface ICPPASTLinkageSpecification extends IASTDeclaration, IASTDeclar
* @since 5.1
*/
public ICPPASTLinkageSpecification copy();
/**
* @since 5.3
*/
public ICPPASTLinkageSpecification copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -46,4 +46,9 @@ public interface ICPPASTLiteralExpression extends IASTLiteralExpression {
* @since 5.1
*/
public ICPPASTLiteralExpression copy();
/**
* @since 5.3
*/
public ICPPASTLiteralExpression copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -42,4 +42,9 @@ public interface ICPPASTNamedTypeSpecifier extends IASTNamedTypeSpecifier,
*/
public ICPPASTNamedTypeSpecifier copy();
/**
* @since 5.3
*/
public ICPPASTNamedTypeSpecifier copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -74,4 +74,9 @@ public interface ICPPASTNamespaceAlias extends IASTDeclaration, IASTNameOwner {
*/
public ICPPASTNamespaceAlias copy();
/**
* @since 5.3
*/
public ICPPASTNamespaceAlias copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -93,4 +93,9 @@ public interface ICPPASTNamespaceDefinition extends IASTDeclaration, IASTNameOwn
* @since 5.1
*/
public ICPPASTNamespaceDefinition copy();
/**
* @since 5.3
*/
public ICPPASTNamespaceDefinition copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2010 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -76,6 +76,11 @@ public interface ICPPASTNewExpression extends IASTExpression, IASTImplicitNameOw
*/
public ICPPASTNewExpression copy();
/**
* @since 5.3
*/
public ICPPASTNewExpression copy(CopyStyle style);
/**
* Not allowed on frozen ast.

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2005 - 2009 IBM Corporation and others.
* Copyright (c) 2005 - 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -24,4 +24,9 @@ public interface ICPPASTOperatorName extends IASTName {
* @since 5.1
*/
public ICPPASTOperatorName copy();
/**
* @since 5.3
*/
public ICPPASTOperatorName copy(CopyStyle style);
}

View file

@ -1,5 +1,5 @@
/*******************************************************************************
* Copyright (c) 2004, 2009 IBM Corporation and others.
* Copyright (c) 2004, 2011 IBM Corporation and others.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
@ -29,6 +29,11 @@ public interface ICPPASTParameterDeclaration extends ICPPASTTemplateParameter, I
*/
public ICPPASTParameterDeclaration copy();
/**
* @since 5.3
*/
public ICPPASTParameterDeclaration copy(CopyStyle style);
/**
* @since 5.2
*/

Some files were not shown because too many files have changed in this diff Show more