diff options
author | Karsten Thoms | 2014-05-06 11:53:29 +0000 |
---|---|---|
committer | Karsten Thoms | 2014-05-06 11:53:29 +0000 |
commit | b136383f475b68981bf43f2cb5d821b2a1645376 (patch) | |
tree | 75db45ba07b097bf777305894b45d19118d65608 | |
parent | 07a34527488e84e3a30c101bbb6c53aaf9d04d67 (diff) | |
download | org.eclipse.xpand-b136383f475b68981bf43f2cb5d821b2a1645376.tar.gz org.eclipse.xpand-b136383f475b68981bf43f2cb5d821b2a1645376.tar.xz org.eclipse.xpand-b136383f475b68981bf43f2cb5d821b2a1645376.zip |
[434190] Provide parameters and target type for EXPAND statement content
proposal
-rw-r--r-- | plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/ExpandProposalComputer.java | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/ExpandProposalComputer.java b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/ExpandProposalComputer.java index ed72eab8..9ae14b93 100644 --- a/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/ExpandProposalComputer.java +++ b/plugins/org.eclipse.xpand/src/org/eclipse/internal/xpand2/codeassist/ExpandProposalComputer.java @@ -17,6 +17,7 @@ import java.util.regex.Matcher; import java.util.regex.Pattern; import org.eclipse.internal.xpand2.model.XpandDefinition; +import org.eclipse.internal.xtend.expression.ast.DeclaredParameter; import org.eclipse.internal.xtend.expression.codeassist.ProposalComputer; import org.eclipse.internal.xtend.expression.codeassist.ProposalFactory; import org.eclipse.xpand2.XpandExecutionContext; @@ -37,7 +38,19 @@ public class ExpandProposalComputer implements ProposalComputer { if (allDefinitions != null) { for (XpandDefinition xpandDefinition : allDefinitions) { String defineName = xpandDefinition.getName(); - result.add(factory.createDefinitionProposal(defineName, defineName, prefix)); + StringBuilder displayString = new StringBuilder (defineName); + DeclaredParameter[] params = xpandDefinition.getParams(); + if (params.length>0) { + displayString.append("("); + for (int i=0; i<params.length; i++) { + if (i>0) displayString.append(","); + displayString.append(params[i].getType()); + } + + displayString.append(")"); + } + displayString.append(" - ").append(xpandDefinition.getTargetType()); + result.add(factory.createDefinitionProposal(defineName, displayString.toString(), prefix)); } } } |