mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-07-24 09:25:31 +02:00
CORE
Added X-Ref/Elaborated type support w/element requestor callbacks. TESTS Added CompleteParseASTTest::testForewardDeclarationWithUsage().
This commit is contained in:
parent
8dba12bff3
commit
891454830b
16 changed files with 161 additions and 18 deletions
|
@ -1,4 +1,7 @@
|
|||
2003-08-12
|
||||
2003-08-12 John Camelon
|
||||
Added CompleteParseASTTest::testForewardDeclarationWithUsage().
|
||||
|
||||
2003-08-12 Hoda Amer
|
||||
Added CompletionProposalsTest to the suit to test the generation
|
||||
of completion proposals.
|
||||
|
||||
|
|
|
@ -104,6 +104,7 @@ public class CompleteParseASTTest extends TestCase
|
|||
public class FullParseCallback implements ISourceElementRequestor
|
||||
{
|
||||
private List references = new ArrayList();
|
||||
private List forewardDecls = new ArrayList();
|
||||
private Stack inclusions = new Stack();
|
||||
private Scope compilationUnit;
|
||||
|
||||
|
@ -499,6 +500,22 @@ public class CompleteParseASTTest extends TestCase
|
|||
{
|
||||
return references;
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptElaboratedForewardDeclaration(org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier)
|
||||
*/
|
||||
public void acceptElaboratedForewardDeclaration(IASTElaboratedTypeSpecifier elaboratedType)
|
||||
{
|
||||
forewardDecls.add( elaboratedType );
|
||||
}
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
public List getForewardDecls()
|
||||
{
|
||||
return forewardDecls;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
protected Iterator getDeclarations( IASTScope scope )
|
||||
|
@ -852,6 +869,25 @@ public class CompleteParseASTTest extends TestCase
|
|||
assertEquals( variableA.getAbstractDeclaration().getTypeSpecifier(), elab );
|
||||
}
|
||||
|
||||
public void testForewardDeclarationWithUsage() throws Exception
|
||||
{
|
||||
Iterator declarations = parse( "class A; A * anA;class A { };").getDeclarations();
|
||||
IASTAbstractTypeSpecifierDeclaration forewardDecl = (IASTAbstractTypeSpecifierDeclaration)declarations.next();
|
||||
IASTVariable variable = (IASTVariable)declarations.next();
|
||||
IASTAbstractTypeSpecifierDeclaration classDecl = (IASTAbstractTypeSpecifierDeclaration)declarations.next();
|
||||
IASTElaboratedTypeSpecifier elab = (IASTElaboratedTypeSpecifier)forewardDecl.getTypeSpecifier();
|
||||
IASTClassSpecifier clasSpec = (IASTClassSpecifier)classDecl.getTypeSpecifier();
|
||||
assertEquals( elab.getName(), clasSpec.getName() );
|
||||
String [] fqnClass = clasSpec.getFullyQualifiedName();
|
||||
String [] fqnElab = elab.getFullyQualifiedName();
|
||||
assertEquals( fqnClass.length, fqnElab.length );
|
||||
for( int i = 0; i < fqnClass.length; ++i )
|
||||
assertEquals( fqnClass[i], fqnElab[i]);
|
||||
assertEquals( callback.getReferences().size(), 1 );
|
||||
assertEquals( callback.getForewardDecls().size(), 1 );
|
||||
}
|
||||
|
||||
|
||||
public void testASM() throws Exception
|
||||
{
|
||||
IASTASMDefinition asm = (IASTASMDefinition)parse( "asm ( \"blah blah blah\" );" ).getDeclarations().next();
|
||||
|
|
|
@ -951,4 +951,12 @@ public class DOMBuilder implements ISourceElementRequestor
|
|||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptElaboratedForewardDeclaration(org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier)
|
||||
*/
|
||||
public void acceptElaboratedForewardDeclaration(IASTElaboratedTypeSpecifier elaboratedType)
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
}
|
|
@ -22,6 +22,7 @@ import org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration;
|
|||
import org.eclipse.cdt.core.parser.ast.IASTClassReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTCompilationUnit;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTField;
|
||||
|
@ -403,4 +404,11 @@ public class SourceIndexerRequestor implements ISourceElementRequestor, IIndexCo
|
|||
if (reference.getReferencedElement() instanceof IASTMethod)
|
||||
indexer.addMethodReference((IASTMethod) reference.getReferencedElement());
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptElaboratedForewardDeclaration(org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier)
|
||||
*/
|
||||
public void acceptElaboratedForewardDeclaration(IASTElaboratedTypeSpecifier elaboratedType)
|
||||
{
|
||||
// TODO BOGDAN IMPLEMENT THIS
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,3 +1,6 @@
|
|||
2003-08-12 John Camelon
|
||||
Added X-Ref/Elaborated type support w/element requestor callbacks.
|
||||
|
||||
2003-08-11 John Camelon
|
||||
Added Complete Parse support for ASM Definitions.
|
||||
Added isVolatile() to abstract declarations.
|
||||
|
|
|
@ -15,6 +15,7 @@ import org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration;
|
|||
import org.eclipse.cdt.core.parser.ast.IASTClassReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTCompilationUnit;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTField;
|
||||
|
@ -54,6 +55,7 @@ public interface ISourceElementRequestor {
|
|||
public void acceptASMDefinition( IASTASMDefinition asmDefinition );
|
||||
public void acceptTypedefDeclaration( IASTTypedefDeclaration typedef );
|
||||
public void acceptEnumerationSpecifier( IASTEnumerationSpecifier enumeration );
|
||||
public void acceptElaboratedForewardDeclaration( IASTElaboratedTypeSpecifier elaboratedType );
|
||||
public void acceptAbstractTypeSpecDeclaration( IASTAbstractTypeSpecifierDeclaration abstractDeclaration );
|
||||
|
||||
public void enterFunctionBody( IASTFunction function );
|
||||
|
|
|
@ -16,5 +16,5 @@ package org.eclipse.cdt.core.parser.ast;
|
|||
*/
|
||||
public interface IASTClassReference extends IASTReference
|
||||
{
|
||||
|
||||
public boolean isResolved();
|
||||
}
|
||||
|
|
|
@ -10,13 +10,15 @@
|
|||
***********************************************************************/
|
||||
package org.eclipse.cdt.core.parser.ast;
|
||||
|
||||
import org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate;
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* @author jcamelon
|
||||
*
|
||||
*/
|
||||
public interface IASTElaboratedTypeSpecifier extends IASTTypeSpecifier, IASTOffsetableElement {
|
||||
public interface IASTElaboratedTypeSpecifier extends IASTTypeSpecifier, IASTOffsetableElement, IASTQualifiedNameElement, ISourceElementCallbackDelegate {
|
||||
|
||||
public String getName();
|
||||
public ASTClassKind getClassKind();
|
||||
|
|
|
@ -7,6 +7,7 @@ import org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration;
|
|||
import org.eclipse.cdt.core.parser.ast.IASTClassReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTCompilationUnit;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTField;
|
||||
|
@ -395,5 +396,14 @@ public class NullSourceElementRequestor implements ISourceElementRequestor
|
|||
{
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptElaboratedForewardDeclaration(org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier)
|
||||
*/
|
||||
public void acceptElaboratedForewardDeclaration(IASTElaboratedTypeSpecifier elaboratedType)
|
||||
{
|
||||
// TODO Auto-generated method stub
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1493,7 +1493,8 @@ public class Parser implements IParser
|
|||
|
||||
ITokenDuple d = name();
|
||||
IASTElaboratedTypeSpecifier elaboratedTypeSpec = null;
|
||||
|
||||
final boolean isForewardDecl = ( LT(1) == IToken.tSEMI );
|
||||
|
||||
try
|
||||
{
|
||||
elaboratedTypeSpec =
|
||||
|
@ -1503,7 +1504,7 @@ public class Parser implements IParser
|
|||
d,
|
||||
t.getOffset(),
|
||||
d.getLastToken().getEndOffset(),
|
||||
( LT(1) == IToken.tSEMI ) );
|
||||
isForewardDecl );
|
||||
}
|
||||
catch (ASTSemanticException e)
|
||||
{
|
||||
|
@ -1511,6 +1512,9 @@ public class Parser implements IParser
|
|||
throw backtrack;
|
||||
}
|
||||
sdw.setTypeSpecifier(elaboratedTypeSpec);
|
||||
|
||||
if( isForewardDecl )
|
||||
elaboratedTypeSpec.acceptElement( requestor );
|
||||
}
|
||||
/**
|
||||
* Consumes template parameters.
|
||||
|
|
|
@ -14,6 +14,7 @@ import org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate;
|
|||
import org.eclipse.cdt.core.parser.ISourceElementRequestor;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTTypeSpecifier;
|
||||
|
||||
/**
|
||||
* @author jcamelon
|
||||
|
@ -23,13 +24,13 @@ public class ASTClassReference
|
|||
extends ASTReference
|
||||
implements IASTClassReference
|
||||
{
|
||||
private final IASTClassSpecifier reference;
|
||||
private final IASTTypeSpecifier reference;
|
||||
/**
|
||||
* @param i
|
||||
* @param string
|
||||
* @param specifier
|
||||
*/
|
||||
public ASTClassReference(int i, String string, IASTClassSpecifier specifier)
|
||||
public ASTClassReference(int i, String string, IASTTypeSpecifier specifier)
|
||||
{
|
||||
super( i, string );
|
||||
reference = specifier;
|
||||
|
@ -39,7 +40,7 @@ public class ASTClassReference
|
|||
*/
|
||||
public ISourceElementCallbackDelegate getReferencedElement()
|
||||
{
|
||||
return reference;
|
||||
return (ISourceElementCallbackDelegate)reference;
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#acceptElement(org.eclipse.cdt.core.parser.ISourceElementRequestor)
|
||||
|
@ -60,4 +61,11 @@ public class ASTClassReference
|
|||
public void exitScope(ISourceElementRequestor requestor)
|
||||
{
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ast.IASTClassReference#isResolved()
|
||||
*/
|
||||
public boolean isResolved()
|
||||
{
|
||||
return ( reference instanceof IASTClassSpecifier );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,10 +10,13 @@
|
|||
***********************************************************************/
|
||||
package org.eclipse.cdt.internal.core.parser.ast.complete;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.eclipse.cdt.core.parser.ISourceElementRequestor;
|
||||
import org.eclipse.cdt.core.parser.ast.ASTClassKind;
|
||||
import org.eclipse.cdt.core.parser.ast.ASTNotImplementedException;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.internal.core.parser.ast.ASTQualifiedNamedElement;
|
||||
import org.eclipse.cdt.internal.core.parser.ast.Offsets;
|
||||
import org.eclipse.cdt.internal.core.parser.pst.ISymbol;
|
||||
|
||||
|
@ -23,8 +26,11 @@ import org.eclipse.cdt.internal.core.parser.pst.ISymbol;
|
|||
*/
|
||||
public class ASTElaboratedTypeSpecifier extends ASTSymbol implements IASTElaboratedTypeSpecifier
|
||||
{
|
||||
private final ASTClassKind kind;
|
||||
private final boolean isForwardDeclaration;
|
||||
private final ASTClassKind kind;
|
||||
private final ASTQualifiedNamedElement qualifiedName;
|
||||
private Offsets offsets = new Offsets();
|
||||
private final ASTReferenceStore store;
|
||||
|
||||
/**
|
||||
* @param checkSymbol
|
||||
|
@ -32,12 +38,16 @@ public class ASTElaboratedTypeSpecifier extends ASTSymbol implements IASTElabora
|
|||
* @param startingOffset
|
||||
* @param endOffset
|
||||
*/
|
||||
public ASTElaboratedTypeSpecifier(ISymbol checkSymbol, ASTClassKind kind, int startingOffset, int endOffset)
|
||||
public ASTElaboratedTypeSpecifier(ISymbol checkSymbol, ASTClassKind kind, int startingOffset, int endOffset, List references, boolean isDecl )
|
||||
{
|
||||
super( checkSymbol );
|
||||
this.kind = kind;
|
||||
setStartingOffset( startingOffset );
|
||||
setEndingOffset( endOffset );
|
||||
qualifiedName = new ASTQualifiedNamedElement( getOwnerScope(), checkSymbol.getName() );
|
||||
store = new ASTReferenceStore( references );
|
||||
isForwardDeclaration = isDecl;
|
||||
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier#getName()
|
||||
|
@ -93,6 +103,9 @@ public class ASTElaboratedTypeSpecifier extends ASTSymbol implements IASTElabora
|
|||
*/
|
||||
public void acceptElement(ISourceElementRequestor requestor)
|
||||
{
|
||||
if( isForwardDeclaration )
|
||||
requestor.acceptElaboratedForewardDeclaration(this);
|
||||
store.processReferences(requestor);
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#enterScope(org.eclipse.cdt.core.parser.ISourceElementRequestor)
|
||||
|
@ -106,4 +119,11 @@ public class ASTElaboratedTypeSpecifier extends ASTSymbol implements IASTElabora
|
|||
public void exitScope(ISourceElementRequestor requestor)
|
||||
{
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ast.IASTQualifiedNameElement#getFullyQualifiedName()
|
||||
*/
|
||||
public String[] getFullyQualifiedName()
|
||||
{
|
||||
return qualifiedName.getFullyQualifiedName();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -400,6 +400,9 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
|||
|
||||
IDerivableContainerSymbol newSymbol = pst.newDerivableContainerSymbol( lastToken.getImage(), pstType );
|
||||
|
||||
if( classSymbol != null )
|
||||
classSymbol.setTypeSymbol( newSymbol );
|
||||
|
||||
try
|
||||
{
|
||||
currentScopeSymbol.addSymbol( newSymbol );
|
||||
|
@ -408,9 +411,6 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
|||
{
|
||||
throw new ASTSemanticException();
|
||||
}
|
||||
|
||||
if( classSymbol != null )
|
||||
classSymbol.setTypeSymbol( newSymbol );
|
||||
|
||||
ASTClassSpecifier classSpecifier = new ASTClassSpecifier( newSymbol, kind, type, access, startingOffset, nameOffset, references );
|
||||
try
|
||||
|
@ -500,7 +500,7 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
|||
symbol.getType() == TypeInfo.t_struct ||
|
||||
symbol.getType() == TypeInfo.t_union )
|
||||
{
|
||||
return new ASTClassReference( offset, string, (IASTClassSpecifier)symbol.getASTExtension().getPrimaryDeclaration() );
|
||||
return new ASTClassReference( offset, string, (IASTTypeSpecifier)symbol.getASTExtension().getPrimaryDeclaration() );
|
||||
}
|
||||
else if( symbol.getTypeInfo().checkBit( TypeInfo.isTypedef ))
|
||||
{
|
||||
|
@ -1296,7 +1296,7 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
|||
}
|
||||
|
||||
ASTElaboratedTypeSpecifier elab =
|
||||
new ASTElaboratedTypeSpecifier( checkSymbol, kind, startingOffset, endOffset );
|
||||
new ASTElaboratedTypeSpecifier( checkSymbol, kind, startingOffset, endOffset, references, isForewardDecl );
|
||||
|
||||
try
|
||||
{
|
||||
|
|
|
@ -10,9 +10,12 @@
|
|||
***********************************************************************/
|
||||
package org.eclipse.cdt.internal.core.parser.ast.quick;
|
||||
|
||||
import org.eclipse.cdt.core.parser.ISourceElementRequestor;
|
||||
import org.eclipse.cdt.core.parser.ast.ASTClassKind;
|
||||
import org.eclipse.cdt.core.parser.ast.ASTNotImplementedException;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTScope;
|
||||
import org.eclipse.cdt.internal.core.parser.ast.ASTQualifiedNamedElement;
|
||||
import org.eclipse.cdt.internal.core.parser.ast.Offsets;
|
||||
|
||||
/**
|
||||
|
@ -24,19 +27,21 @@ public class ASTElaboratedTypeSpecifier implements IASTElaboratedTypeSpecifier
|
|||
|
||||
private Offsets offsets = new Offsets();
|
||||
private final String typeName;
|
||||
private final ASTClassKind classKind;
|
||||
private final ASTClassKind classKind;
|
||||
private final ASTQualifiedNamedElement qualifiedName;
|
||||
/**
|
||||
* @param elaboratedClassKind
|
||||
* @param typeName
|
||||
* @param startingOffset
|
||||
* @param endOffset
|
||||
*/
|
||||
public ASTElaboratedTypeSpecifier(ASTClassKind elaboratedClassKind, String typeName, int startingOffset, int endOffset)
|
||||
public ASTElaboratedTypeSpecifier(IASTScope scope, ASTClassKind elaboratedClassKind, String typeName, int startingOffset, int endOffset)
|
||||
{
|
||||
classKind = elaboratedClassKind;
|
||||
this.typeName = typeName;
|
||||
offsets.setStartingOffset( startingOffset );
|
||||
offsets.setEndingOffset( endOffset );
|
||||
qualifiedName = new ASTQualifiedNamedElement( scope, typeName );
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier#getTypeName()
|
||||
|
@ -88,4 +93,30 @@ public class ASTElaboratedTypeSpecifier implements IASTElaboratedTypeSpecifier
|
|||
{
|
||||
throw new ASTNotImplementedException();
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ast.IASTQualifiedNameElement#getFullyQualifiedName()
|
||||
*/
|
||||
public String[] getFullyQualifiedName()
|
||||
{
|
||||
return qualifiedName.getFullyQualifiedName();
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#acceptElement(org.eclipse.cdt.core.parser.ISourceElementRequestor)
|
||||
*/
|
||||
public void acceptElement(ISourceElementRequestor requestor)
|
||||
{
|
||||
requestor.acceptElaboratedForewardDeclaration(this);
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#enterScope(org.eclipse.cdt.core.parser.ISourceElementRequestor)
|
||||
*/
|
||||
public void enterScope(ISourceElementRequestor requestor)
|
||||
{
|
||||
}
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementCallbackDelegate#exitScope(org.eclipse.cdt.core.parser.ISourceElementRequestor)
|
||||
*/
|
||||
public void exitScope(ISourceElementRequestor requestor)
|
||||
{
|
||||
}
|
||||
}
|
||||
|
|
|
@ -280,6 +280,6 @@ public class QuickParseASTFactory extends BaseASTFactory implements IASTFactory
|
|||
|
||||
public IASTElaboratedTypeSpecifier createElaboratedTypeSpecifier(IASTScope scope, ASTClassKind elaboratedClassKind, ITokenDuple typeName, int startingOffset, int endOffset, boolean isForewardDecl)
|
||||
{
|
||||
return new ASTElaboratedTypeSpecifier( elaboratedClassKind, typeName.toString(), startingOffset, endOffset );
|
||||
return new ASTElaboratedTypeSpecifier( scope, elaboratedClassKind, typeName.toString(), startingOffset, endOffset );
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,6 +35,7 @@ import org.eclipse.cdt.core.parser.ast.IASTAbstractTypeSpecifierDeclaration;
|
|||
import org.eclipse.cdt.core.parser.ast.IASTClassReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTClassSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTCompilationUnit;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationReference;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTEnumerationSpecifier;
|
||||
import org.eclipse.cdt.core.parser.ast.IASTField;
|
||||
|
@ -413,6 +414,13 @@ public class MatchLocator implements ISourceElementRequestor, ICSearchConstants
|
|||
|
||||
private IASTScope currentScope = null;
|
||||
private LinkedList scopeStack = new LinkedList();
|
||||
/* (non-Javadoc)
|
||||
* @see org.eclipse.cdt.core.parser.ISourceElementRequestor#acceptElaboratedForewardDeclaration(org.eclipse.cdt.core.parser.ast.IASTElaboratedTypeSpecifier)
|
||||
*/
|
||||
public void acceptElaboratedForewardDeclaration(IASTElaboratedTypeSpecifier elaboratedType)
|
||||
{
|
||||
//TODO BOGDAN IMPLEMENT THIS
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Reference in a new issue