mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-04-29 19:45:01 +02:00
- work on bug 50984 - fix NPE with anonymous bitfields
- fix problems with globally qualified using declarations - fix npe & cce in templates
This commit is contained in:
parent
eed5db60c0
commit
b2de2fdd6c
4 changed files with 140 additions and 161 deletions
|
@ -1680,4 +1680,19 @@ public class CompleteParseASTTest extends CompleteParseBaseTest
|
||||||
|
|
||||||
assertEquals( convert.getOwnerClassSpecifier(), num_put );
|
assertEquals( convert.getOwnerClassSpecifier(), num_put );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testGloballyQualifiedUsingDeclaration() throws Exception
|
||||||
|
{
|
||||||
|
Iterator declarations = parse( "int iii; namespace N { using ::iii; }" ).getDeclarations();
|
||||||
|
|
||||||
|
IASTVariable iii = (IASTVariable) declarations.next();
|
||||||
|
IASTNamespaceDefinition namespaceN = (IASTNamespaceDefinition)declarations.next();
|
||||||
|
|
||||||
|
IASTUsingDeclaration using = (IASTUsingDeclaration)(getDeclarations(namespaceN).next());
|
||||||
|
|
||||||
|
assertEquals( callback.getReferences().size(), 1 );
|
||||||
|
|
||||||
|
Iterator references = callback.getReferences().iterator();
|
||||||
|
assertEquals( ((IASTReference)references.next()).getReferencedElement(), iii );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -527,12 +527,18 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
if(name.getSegmentCount() > 1)
|
if(name.getSegmentCount() > 1)
|
||||||
{
|
{
|
||||||
ITokenDuple duple = name.getLeadingSegments();
|
ITokenDuple duple = name.getLeadingSegments();
|
||||||
ISymbol symbol = lookupQualifiedName( scopeToSymbol(scope), duple, references, true );
|
|
||||||
IContainerSymbol containerSymbol = null;
|
IContainerSymbol containerSymbol = null;
|
||||||
|
if( duple == null ){
|
||||||
|
//null leading segment means globally qualified
|
||||||
|
containerSymbol = scopeToSymbol( scope ).getSymbolTable().getCompilationUnit();
|
||||||
|
} else {
|
||||||
|
ISymbol symbol = lookupQualifiedName( scopeToSymbol(scope), duple, references, true );
|
||||||
|
|
||||||
if( symbol instanceof IContainerSymbol )
|
if( symbol instanceof IContainerSymbol )
|
||||||
containerSymbol = (IContainerSymbol) symbol;
|
containerSymbol = (IContainerSymbol) symbol;
|
||||||
else if ( symbol instanceof IDeferredTemplateInstance )
|
else if ( symbol instanceof IDeferredTemplateInstance )
|
||||||
containerSymbol = ((IDeferredTemplateInstance)symbol).getTemplate().getTemplatedSymbol();
|
containerSymbol = ((IDeferredTemplateInstance)symbol).getTemplate().getTemplatedSymbol();
|
||||||
|
}
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
endResult = scopeToSymbol(scope).addUsingDeclaration( name.getLastToken().getImage(), containerSymbol );
|
endResult = scopeToSymbol(scope).addUsingDeclaration( name.getLastToken().getImage(), containerSymbol );
|
||||||
|
@ -1939,6 +1945,10 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
|| (parentScope.getType() == TypeInfo.t_struct)
|
|| (parentScope.getType() == TypeInfo.t_struct)
|
||||||
|| (parentScope.getType() == TypeInfo.t_union))
|
|| (parentScope.getType() == TypeInfo.t_union))
|
||||||
){
|
){
|
||||||
|
if( parentScope.getASTExtension().getPrimaryDeclaration() instanceof IASTElaboratedTypeSpecifier ){
|
||||||
|
//we are trying to define a member of a class for which we only have a forward declaration
|
||||||
|
handleProblem( scope, IProblem.SEMANTICS_RELATED, name.toString(), startOffset, nameEndOffset, startLine );
|
||||||
|
}
|
||||||
IASTScope methodParentScope = (IASTScope)parentScope.getASTExtension().getPrimaryDeclaration();
|
IASTScope methodParentScope = (IASTScope)parentScope.getASTExtension().getPrimaryDeclaration();
|
||||||
ITokenDuple newName = name.getLastSegment();
|
ITokenDuple newName = name.getLastSegment();
|
||||||
return createMethod(
|
return createMethod(
|
||||||
|
@ -2703,11 +2713,13 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
{
|
{
|
||||||
IContainerSymbol ownerScope = scopeToSymbol( scope );
|
IContainerSymbol ownerScope = scopeToSymbol( scope );
|
||||||
|
|
||||||
|
String image = ( name != null ) ? name.toString() : EMPTY_STRING;
|
||||||
|
|
||||||
if(references == null)
|
if(references == null)
|
||||||
references = new ArrayList();
|
references = new ArrayList();
|
||||||
ISymbol newSymbol = cloneSimpleTypeSymbol(name.toString(), abstractDeclaration, references);
|
ISymbol newSymbol = cloneSimpleTypeSymbol(image, abstractDeclaration, references);
|
||||||
if( newSymbol == null )
|
if( newSymbol == null )
|
||||||
handleProblem( IProblem.SEMANTICS_RELATED, name.toString() );
|
handleProblem( IProblem.SEMANTICS_RELATED, image );
|
||||||
|
|
||||||
|
|
||||||
setVariableTypeInfoBits(
|
setVariableTypeInfoBits(
|
||||||
|
@ -2722,9 +2734,9 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
|
|
||||||
newSymbol.setIsForwardDeclaration(isStatic);
|
newSymbol.setIsForwardDeclaration(isStatic);
|
||||||
boolean previouslyDeclared = false;
|
boolean previouslyDeclared = false;
|
||||||
if(!isStatic){
|
if( !isStatic && !image.equals( EMPTY_STRING ) ){
|
||||||
List fieldReferences = new ArrayList();
|
List fieldReferences = new ArrayList();
|
||||||
ISymbol fieldDeclaration = lookupQualifiedName(ownerScope, name.toString(), fieldReferences, false, LookupType.FORDEFINITION);
|
ISymbol fieldDeclaration = lookupQualifiedName(ownerScope, image, fieldReferences, false, LookupType.FORDEFINITION);
|
||||||
|
|
||||||
if( fieldDeclaration != null && newSymbol.getType() == fieldDeclaration.getType() )
|
if( fieldDeclaration != null && newSymbol.getType() == fieldDeclaration.getType() )
|
||||||
{
|
{
|
||||||
|
@ -2745,7 +2757,7 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
}
|
}
|
||||||
catch (ParserSymbolTableException e)
|
catch (ParserSymbolTableException e)
|
||||||
{
|
{
|
||||||
handleProblem(e.createProblemID(), name.toString() );
|
handleProblem(e.createProblemID(), image );
|
||||||
}
|
}
|
||||||
|
|
||||||
ASTField field = new ASTField( newSymbol, abstractDeclaration, initializerClause, bitfieldExpression, startingOffset, startingLine, nameOffset, nameEndOffset, nameLine, references, previouslyDeclared, constructorExpression, visibility );
|
ASTField field = new ASTField( newSymbol, abstractDeclaration, initializerClause, bitfieldExpression, startingOffset, startingLine, nameOffset, nameEndOffset, nameLine, references, previouslyDeclared, constructorExpression, visibility );
|
||||||
|
@ -2941,8 +2953,13 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
if (name.getSegmentCount() != 1) // qualified name
|
if (name.getSegmentCount() != 1) // qualified name
|
||||||
{
|
{
|
||||||
ITokenDuple containerSymbolName = name.getLeadingSegments();
|
ITokenDuple containerSymbolName = name.getLeadingSegments();
|
||||||
|
if( containerSymbolName == null ){
|
||||||
|
//null means globally qualified
|
||||||
|
currentScopeSymbol = currentScopeSymbol.getSymbolTable().getCompilationUnit();
|
||||||
|
} else {
|
||||||
currentScopeSymbol = (IContainerSymbol) lookupQualifiedName(
|
currentScopeSymbol = (IContainerSymbol) lookupQualifiedName(
|
||||||
currentScopeSymbol, containerSymbolName, references, true);
|
currentScopeSymbol, containerSymbolName, references, true);
|
||||||
|
}
|
||||||
if (currentScopeSymbol == null)
|
if (currentScopeSymbol == null)
|
||||||
handleProblem(IProblem.SEMANTIC_NAME_NOT_FOUND,
|
handleProblem(IProblem.SEMANTIC_NAME_NOT_FOUND,
|
||||||
containerSymbolName.toString(), containerSymbolName
|
containerSymbolName.toString(), containerSymbolName
|
||||||
|
@ -3028,6 +3045,9 @@ public class CompleteParseASTFactory extends BaseASTFactory implements IASTFacto
|
||||||
addReference(references, createReference(checkSymbol,
|
addReference(references, createReference(checkSymbol,
|
||||||
newSymbolName, nameToken.getOffset()));
|
newSymbolName, nameToken.getOffset()));
|
||||||
}
|
}
|
||||||
|
if( checkSymbol instanceof ITemplateSymbol ){
|
||||||
|
checkSymbol = ((ITemplateSymbol)checkSymbol).getTemplatedSymbol();
|
||||||
|
}
|
||||||
if (checkSymbol.getASTExtension().getPrimaryDeclaration() instanceof IASTClassSpecifier
|
if (checkSymbol.getASTExtension().getPrimaryDeclaration() instanceof IASTClassSpecifier
|
||||||
|| checkSymbol.getASTExtension().getPrimaryDeclaration() instanceof IASTEnumerationSpecifier) {
|
|| checkSymbol.getASTExtension().getPrimaryDeclaration() instanceof IASTEnumerationSpecifier) {
|
||||||
ASTElaboratedTypeSpecifier elab = new ASTElaboratedTypeSpecifier(
|
ASTElaboratedTypeSpecifier elab = new ASTElaboratedTypeSpecifier(
|
||||||
|
|
|
@ -67,8 +67,11 @@ public class DerivableContainerSymbol extends ContainerSymbol implements IDeriva
|
||||||
ParentWrapper wrapper = null, newWrapper = null;
|
ParentWrapper wrapper = null, newWrapper = null;
|
||||||
while( parents.hasNext() ){
|
while( parents.hasNext() ){
|
||||||
wrapper = (ParentWrapper) parents.next();
|
wrapper = (ParentWrapper) parents.next();
|
||||||
|
ISymbol parent = wrapper.getParent();
|
||||||
|
if( parent == null )
|
||||||
|
continue;
|
||||||
|
|
||||||
newWrapper = new ParentWrapper( wrapper.getParent(), wrapper.isVirtual(), wrapper.getAccess(), wrapper.getOffset(), wrapper.getReferences() );
|
newWrapper = new ParentWrapper( wrapper.getParent(), wrapper.isVirtual(), wrapper.getAccess(), wrapper.getOffset(), wrapper.getReferences() );
|
||||||
ISymbol parent = newWrapper.getParent();
|
|
||||||
if( parent instanceof IDeferredTemplateInstance ){
|
if( parent instanceof IDeferredTemplateInstance ){
|
||||||
template.registerDeferredInstatiation( newSymbol, newWrapper, ITemplateSymbol.DeferredKind.PARENT, argMap );
|
template.registerDeferredInstatiation( newSymbol, newWrapper, ITemplateSymbol.DeferredKind.PARENT, argMap );
|
||||||
} else if( parent.isType( TypeInfo.t_templateParameter ) && argMap.containsKey( parent ) ){
|
} else if( parent.isType( TypeInfo.t_templateParameter ) && argMap.containsKey( parent ) ){
|
||||||
|
|
|
@ -183,7 +183,7 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
if( template.getParameterList().size() == 0 ){
|
if( template.getParameterList().size() == 0 ){
|
||||||
//explicit specialization, deduce some arguments and use addTemplateId
|
//explicit specialization, deduce some arguments and use addTemplateId
|
||||||
ISymbol previous = findPreviousSymbol( symbol, new LinkedList() );
|
ISymbol previous = findPreviousSymbol( symbol, new LinkedList() );
|
||||||
if( previous == null )
|
if( previous == null || !(previous.getContainingSymbol() instanceof ITemplateSymbol) )
|
||||||
throw new ParserSymbolTableException( ParserSymbolTableException.r_BadTemplate );
|
throw new ParserSymbolTableException( ParserSymbolTableException.r_BadTemplate );
|
||||||
|
|
||||||
List args = null;
|
List args = null;
|
||||||
|
@ -361,70 +361,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#removeSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
|
||||||
*/
|
|
||||||
public boolean removeSymbol(ISymbol symbol) {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#hasUsingDirectives()
|
|
||||||
*/
|
|
||||||
public boolean hasUsingDirectives() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getUsingDirectives()
|
|
||||||
*/
|
|
||||||
public List getUsingDirectives() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDirective(org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
|
||||||
*/
|
|
||||||
public IUsingDirectiveSymbol addUsingDirective(IContainerSymbol namespace) throws ParserSymbolTableException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDeclaration(java.lang.String)
|
|
||||||
*/
|
|
||||||
public IUsingDeclarationSymbol addUsingDeclaration(String name) throws ParserSymbolTableException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDeclaration(java.lang.String, org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
|
||||||
*/
|
|
||||||
public IUsingDeclarationSymbol addUsingDeclaration(String name, IContainerSymbol declContext) throws ParserSymbolTableException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getContainedSymbols()
|
|
||||||
*/
|
|
||||||
public Map getContainedSymbols() {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#prefixLookup(org.eclipse.cdt.internal.core.parser.pst.TypeFilter, java.lang.String, boolean)
|
|
||||||
*/
|
|
||||||
public List prefixLookup(TypeFilter filter, String prefix, boolean qualified) throws ParserSymbolTableException {
|
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#elaboratedLookup(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType, java.lang.String)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#elaboratedLookup(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType, java.lang.String)
|
||||||
*/
|
*/
|
||||||
|
@ -545,6 +481,37 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
return (IContainerSymbol) (( look instanceof IContainerSymbol) ? look : null);
|
return (IContainerSymbol) (( look instanceof IContainerSymbol) ? look : null);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#lookupFunctionTemplateId(java.lang.String, java.util.List, java.util.List)
|
||||||
|
*/
|
||||||
|
public ISymbol lookupFunctionTemplateId(String name, List parameters, List arguments, boolean forDefinition) throws ParserSymbolTableException {
|
||||||
|
IContainerSymbol last = getLastSymbol();
|
||||||
|
if( last != null ){
|
||||||
|
IParameterizedSymbol found = (IParameterizedSymbol) last.lookupFunctionTemplateId( name, parameters, arguments, forDefinition );
|
||||||
|
if( found != null ){
|
||||||
|
return found;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return getContainingSymbol().lookupFunctionTemplateId( name, parameters, arguments, forDefinition );
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupConstructor(java.util.List)
|
||||||
|
*/
|
||||||
|
public IParameterizedSymbol lookupConstructor(List parameters) throws ParserSymbolTableException {
|
||||||
|
IContainerSymbol last = getLastSymbol();
|
||||||
|
if( last != null && last instanceof IDerivableContainerSymbol ){
|
||||||
|
IDerivableContainerSymbol derivable = (IDerivableContainerSymbol) last;
|
||||||
|
IParameterizedSymbol found = derivable.lookupConstructor( parameters );
|
||||||
|
if( found != null )
|
||||||
|
return found;
|
||||||
|
}
|
||||||
|
if( getContainingSymbol() instanceof IDerivableContainerSymbol )
|
||||||
|
return ((IDerivableContainerSymbol) getContainingSymbol()).lookupConstructor( parameters );
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
private ITemplateSymbol getNextAvailableTemplate() throws ParserSymbolTableException{
|
private ITemplateSymbol getNextAvailableTemplate() throws ParserSymbolTableException{
|
||||||
Iterator tIter = templates.iterator();
|
Iterator tIter = templates.iterator();
|
||||||
Iterator sIter = symbols.iterator();
|
Iterator sIter = symbols.iterator();
|
||||||
|
@ -566,11 +533,67 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
return (ITemplateSymbol) tIter.next();
|
return (ITemplateSymbol) tIter.next();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//TODO: Do any of these other functions need to be implemented?
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#removeSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
|
*/
|
||||||
|
public boolean removeSymbol(ISymbol symbol) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#hasUsingDirectives()
|
||||||
|
*/
|
||||||
|
public boolean hasUsingDirectives() {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getUsingDirectives()
|
||||||
|
*/
|
||||||
|
public List getUsingDirectives() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDirective(org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
||||||
|
*/
|
||||||
|
public IUsingDirectiveSymbol addUsingDirective(IContainerSymbol namespace) throws ParserSymbolTableException {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDeclaration(java.lang.String)
|
||||||
|
*/
|
||||||
|
public IUsingDeclarationSymbol addUsingDeclaration(String name) throws ParserSymbolTableException {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#addUsingDeclaration(java.lang.String, org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
||||||
|
*/
|
||||||
|
public IUsingDeclarationSymbol addUsingDeclaration(String name, IContainerSymbol declContext) throws ParserSymbolTableException {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getContainedSymbols()
|
||||||
|
*/
|
||||||
|
public Map getContainedSymbols() {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* (non-Javadoc)
|
||||||
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#prefixLookup(org.eclipse.cdt.internal.core.parser.pst.TypeFilter, java.lang.String, boolean)
|
||||||
|
*/
|
||||||
|
public List prefixLookup(TypeFilter filter, String prefix, boolean qualified) throws ParserSymbolTableException {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#isVisible(org.eclipse.cdt.internal.core.parser.pst.ISymbol, org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#isVisible(org.eclipse.cdt.internal.core.parser.pst.ISymbol, org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol)
|
||||||
*/
|
*/
|
||||||
public boolean isVisible(ISymbol symbol, IContainerSymbol qualifyingSymbol) {
|
public boolean isVisible(ISymbol symbol, IContainerSymbol qualifyingSymbol) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -578,7 +601,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getContentsIterator()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#getContentsIterator()
|
||||||
*/
|
*/
|
||||||
public Iterator getContentsIterator() {
|
public Iterator getContentsIterator() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -586,7 +608,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#clone()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#clone()
|
||||||
*/
|
*/
|
||||||
public Object clone() {
|
public Object clone() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -594,7 +615,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#instantiate(org.eclipse.cdt.internal.core.parser.pst.ITemplateSymbol, java.util.Map)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#instantiate(org.eclipse.cdt.internal.core.parser.pst.ITemplateSymbol, java.util.Map)
|
||||||
*/
|
*/
|
||||||
public ISymbol instantiate(ITemplateSymbol template, Map argMapParm) throws ParserSymbolTableException {
|
public ISymbol instantiate(ITemplateSymbol template, Map argMapParm) throws ParserSymbolTableException {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -602,15 +622,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setName(java.lang.String)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setName(java.lang.String)
|
||||||
*/
|
*/
|
||||||
public void setName(String name) {
|
public void setName(String name) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getName()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getName()
|
||||||
*/
|
*/
|
||||||
public String getName() {
|
public String getName() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -618,7 +635,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
||||||
*/
|
*/
|
||||||
public boolean isType(eType type) {
|
public boolean isType(eType type) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -626,7 +642,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType, org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType, org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
||||||
*/
|
*/
|
||||||
public boolean isType(eType type, eType upperType) {
|
public boolean isType(eType type, eType upperType) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -634,7 +649,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getType()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getType()
|
||||||
*/
|
*/
|
||||||
public eType getType() {
|
public eType getType() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -642,15 +656,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setType(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.eType)
|
||||||
*/
|
*/
|
||||||
public void setType(eType t) {
|
public void setType(eType t) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getTypeInfo()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getTypeInfo()
|
||||||
*/
|
*/
|
||||||
public TypeInfo getTypeInfo() {
|
public TypeInfo getTypeInfo() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -658,15 +669,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setTypeInfo(org.eclipse.cdt.internal.core.parser.pst.TypeInfo)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setTypeInfo(org.eclipse.cdt.internal.core.parser.pst.TypeInfo)
|
||||||
*/
|
*/
|
||||||
public void setTypeInfo(TypeInfo info) {
|
public void setTypeInfo(TypeInfo info) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getTypeSymbol()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getTypeSymbol()
|
||||||
*/
|
*/
|
||||||
public ISymbol getTypeSymbol() {
|
public ISymbol getTypeSymbol() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -674,15 +682,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setTypeSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setTypeSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
*/
|
*/
|
||||||
public void setTypeSymbol(ISymbol type) {
|
public void setTypeSymbol(ISymbol type) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isForwardDeclaration()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isForwardDeclaration()
|
||||||
*/
|
*/
|
||||||
public boolean isForwardDeclaration() {
|
public boolean isForwardDeclaration() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -690,15 +695,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsForwardDeclaration(boolean)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsForwardDeclaration(boolean)
|
||||||
*/
|
*/
|
||||||
public void setIsForwardDeclaration(boolean forward) {
|
public void setIsForwardDeclaration(boolean forward) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#compareCVQualifiersTo(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#compareCVQualifiersTo(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
*/
|
*/
|
||||||
public int compareCVQualifiersTo(ISymbol symbol) {
|
public int compareCVQualifiersTo(ISymbol symbol) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -706,7 +708,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getPtrOperators()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getPtrOperators()
|
||||||
*/
|
*/
|
||||||
public List getPtrOperators() {
|
public List getPtrOperators() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -714,15 +715,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#addPtrOperator(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.PtrOp)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#addPtrOperator(org.eclipse.cdt.internal.core.parser.pst.TypeInfo.PtrOp)
|
||||||
*/
|
*/
|
||||||
public void addPtrOperator(PtrOp ptrOp) {
|
public void addPtrOperator(PtrOp ptrOp) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isTemplateInstance()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isTemplateInstance()
|
||||||
*/
|
*/
|
||||||
public boolean isTemplateInstance() {
|
public boolean isTemplateInstance() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -730,7 +728,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getInstantiatedSymbol()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getInstantiatedSymbol()
|
||||||
*/
|
*/
|
||||||
public ISymbol getInstantiatedSymbol() {
|
public ISymbol getInstantiatedSymbol() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -738,15 +735,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setInstantiatedSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setInstantiatedSymbol(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
*/
|
*/
|
||||||
public void setInstantiatedSymbol(ISymbol symbol) {
|
public void setInstantiatedSymbol(ISymbol symbol) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isTemplateMember()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#isTemplateMember()
|
||||||
*/
|
*/
|
||||||
public boolean isTemplateMember() {
|
public boolean isTemplateMember() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -754,15 +748,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsTemplateMember(boolean)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsTemplateMember(boolean)
|
||||||
*/
|
*/
|
||||||
public void setIsTemplateMember(boolean isMember) {
|
public void setIsTemplateMember(boolean isMember) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getDepth()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getDepth()
|
||||||
*/
|
*/
|
||||||
public int getDepth() {
|
public int getDepth() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -770,7 +761,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getIsInvisible()
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#getIsInvisible()
|
||||||
*/
|
*/
|
||||||
public boolean getIsInvisible() {
|
public boolean getIsInvisible() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -778,31 +768,24 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsInvisible(boolean)
|
* @see org.eclipse.cdt.internal.core.parser.pst.ISymbol#setIsInvisible(boolean)
|
||||||
*/
|
*/
|
||||||
public void setIsInvisible(boolean invisible) {
|
public void setIsInvisible(boolean invisible) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addParent(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addParent(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
*/
|
*/
|
||||||
public void addParent(ISymbol parent) {
|
public void addParent(ISymbol parent) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addParent(org.eclipse.cdt.internal.core.parser.pst.ISymbol, boolean, org.eclipse.cdt.core.parser.ast.ASTAccessVisibility, int, java.util.List)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addParent(org.eclipse.cdt.internal.core.parser.pst.ISymbol, boolean, org.eclipse.cdt.core.parser.ast.ASTAccessVisibility, int, java.util.List)
|
||||||
*/
|
*/
|
||||||
public void addParent(ISymbol parent, boolean virtual, ASTAccessVisibility visibility, int offset, List references) {
|
public void addParent(ISymbol parent, boolean virtual, ASTAccessVisibility visibility, int offset, List references) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getParents()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getParents()
|
||||||
*/
|
*/
|
||||||
public List getParents() {
|
public List getParents() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -810,7 +793,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#hasParents()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#hasParents()
|
||||||
*/
|
*/
|
||||||
public boolean hasParents() {
|
public boolean hasParents() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -818,40 +800,18 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addConstructor(org.eclipse.cdt.internal.core.parser.pst.IParameterizedSymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addConstructor(org.eclipse.cdt.internal.core.parser.pst.IParameterizedSymbol)
|
||||||
*/
|
*/
|
||||||
public void addConstructor(IParameterizedSymbol constructor) throws ParserSymbolTableException {
|
public void addConstructor(IParameterizedSymbol constructor) throws ParserSymbolTableException {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addCopyConstructor()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addCopyConstructor()
|
||||||
*/
|
*/
|
||||||
public void addCopyConstructor() throws ParserSymbolTableException {
|
public void addCopyConstructor() throws ParserSymbolTableException {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupConstructor(java.util.List)
|
|
||||||
*/
|
|
||||||
public IParameterizedSymbol lookupConstructor(List parameters) throws ParserSymbolTableException {
|
|
||||||
IContainerSymbol last = getLastSymbol();
|
|
||||||
if( last != null && last instanceof IDerivableContainerSymbol ){
|
|
||||||
IDerivableContainerSymbol derivable = (IDerivableContainerSymbol) last;
|
|
||||||
IParameterizedSymbol found = derivable.lookupConstructor( parameters );
|
|
||||||
if( found != null )
|
|
||||||
return found;
|
|
||||||
}
|
|
||||||
if( getContainingSymbol() instanceof IDerivableContainerSymbol )
|
|
||||||
return ((IDerivableContainerSymbol) getContainingSymbol()).lookupConstructor( parameters );
|
|
||||||
|
|
||||||
return null;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getConstructors()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getConstructors()
|
||||||
*/
|
*/
|
||||||
public List getConstructors() {
|
public List getConstructors() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -859,15 +819,12 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addFriend(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#addFriend(org.eclipse.cdt.internal.core.parser.pst.ISymbol)
|
||||||
*/
|
*/
|
||||||
public void addFriend(ISymbol friend) {
|
public void addFriend(ISymbol friend) {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
/* (non-Javadoc)
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupForFriendship(java.lang.String)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupForFriendship(java.lang.String)
|
||||||
*/
|
*/
|
||||||
public ISymbol lookupForFriendship(String name) throws ParserSymbolTableException {
|
public ISymbol lookupForFriendship(String name) throws ParserSymbolTableException {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -875,7 +832,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupFunctionForFriendship(java.lang.String, java.util.List)
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#lookupFunctionForFriendship(java.lang.String, java.util.List)
|
||||||
*/
|
*/
|
||||||
public IParameterizedSymbol lookupFunctionForFriendship(String name, List parameters) throws ParserSymbolTableException {
|
public IParameterizedSymbol lookupFunctionForFriendship(String name, List parameters) throws ParserSymbolTableException {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -883,21 +839,6 @@ public class TemplateFactory extends ExtensibleSymbol implements ITemplateFactor
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getFriends()
|
* @see org.eclipse.cdt.internal.core.parser.pst.IDerivableContainerSymbol#getFriends()
|
||||||
*/
|
*/
|
||||||
public List getFriends() {
|
public List getFriends() {
|
||||||
// TODO Auto-generated method stub
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* (non-Javadoc)
|
|
||||||
* @see org.eclipse.cdt.internal.core.parser.pst.IContainerSymbol#lookupFunctionTemplateId(java.lang.String, java.util.List, java.util.List)
|
|
||||||
*/
|
|
||||||
public ISymbol lookupFunctionTemplateId(String name, List parameters, List arguments, boolean forDefinition) throws ParserSymbolTableException {
|
|
||||||
IContainerSymbol last = getLastSymbol();
|
|
||||||
if( last != null ){
|
|
||||||
IParameterizedSymbol found = (IParameterizedSymbol) last.lookupFunctionTemplateId( name, parameters, arguments, forDefinition );
|
|
||||||
if( found != null ){
|
|
||||||
return found;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return getContainingSymbol().lookupFunctionTemplateId( name, parameters, arguments, forDefinition );
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue