diff options
Diffstat (limited to 'core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java')
-rw-r--r-- | core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java index 0ca11f5bb78..02590fa3572 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/text/contentassist/CContentAssistInvocationContext.java @@ -195,6 +195,17 @@ public class CContentAssistInvocationContext extends ContentAssistInvocationCont return token == Symbols.TokenSEMICOLON; } }; + + private final Lazy<Boolean> followedByOpeningParen = new Lazy<Boolean>() { + @Override + protected Boolean calculateValue() { + final IDocument doc = getDocument(); + final int offset = getInvocationOffset(); + final CHeuristicScanner.TokenStream tokenStream = new CHeuristicScanner.TokenStream(doc, offset); + final int token = tokenStream.nextToken(); + return token == Symbols.TokenLPAREN; + } + }; private final Lazy<String> functionParameterDelimiter = new Lazy<String>() { @Override @@ -452,6 +463,11 @@ public class CContentAssistInvocationContext extends ContentAssistInvocationCont assertNotDisposed(); return followedBySemicolon.value(); } + + public boolean isFollowedByOpeningParen() { + assertNotDisposed(); + return followedByOpeningParen.value(); + } public String getFunctionParameterDelimiter() { assertNotDisposed(); |