1
0
mirror of https://github.com/arduino/Arduino.git synced 2025-02-26 20:54:22 +01:00

codecompletion: added function parameters support.

This commit is contained in:
Cristian Maglie 2017-08-03 18:21:00 +02:00 committed by Martino Facchin
parent 41f0dde6f7
commit a6652f938a
2 changed files with 22 additions and 1 deletions

View File

@ -10,6 +10,7 @@ class ArduinoCompletion {
ArduinoCompletionDetail completion; ArduinoCompletionDetail completion;
String type; String type;
String location; String location;
List<ArduinoParameter> parameters;
public ArduinoCompletionDetail getCompletion() { public ArduinoCompletionDetail getCompletion() {
return completion; return completion;
@ -22,6 +23,23 @@ class ArduinoCompletion {
public String getLocation() { public String getLocation() {
return location; return location;
} }
public List<ArduinoParameter> getParameters() {
return parameters;
}
}
class ArduinoParameter {
String name;
String type;
public String getName() {
return name;
}
public String getType() {
return type;
}
} }
class ArduinoCompletionDetail { class ArduinoCompletionDetail {

View File

@ -70,9 +70,12 @@ public class ClangCompletionProvider extends DefaultCompletionProvider {
if (cc.type.equals("Function")) { if (cc.type.equals("Function")) {
List<Parameter> params = new ArrayList<>(); List<Parameter> params = new ArrayList<>();
int i=0;
for (CompletionChunk chunk : cc.completion.chunks) { for (CompletionChunk chunk : cc.completion.chunks) {
if (chunk.placeholder != null) { if (chunk.placeholder != null) {
params.add(new Parameter("type", chunk.placeholder)); ArduinoParameter p = cc.parameters.get(i);
params.add(new Parameter(p.type, p.name));
i++;
} }
} }