From 29178522d39be796ab984971274763fd43f85033 Mon Sep 17 00:00:00 2001 From: Hackerpilot Date: Sat, 27 Jul 2013 03:13:34 +0000 Subject: [PATCH] Autocomplete extern(...) declarations --- autocomplete.d | 8 ++++++++ constants.d | 12 ++++++++++++ server.d | 3 ++- 3 files changed, 22 insertions(+), 1 deletion(-) diff --git a/autocomplete.d b/autocomplete.d index f84c41a..98cb0e1 100644 --- a/autocomplete.d +++ b/autocomplete.d @@ -72,6 +72,14 @@ AutocompleteResponse complete(AutocompleteRequest request, string[] importPaths) response.completions ~= versions[i]; response.completionKinds ~= CompletionKind.keyword; } + break; + case TokenType.extern_: + response.completionType = CompletionType.identifiers; + for (size_t i = 0; i < linkages.length; i++) + { + response.completions ~= linkages[i]; + response.completionKinds ~= CompletionKind.keyword; + } break; case TokenType.pragma_: response.completionType = CompletionType.identifiers; diff --git a/constants.d b/constants.d index e45b081..ac9fb24 100644 --- a/constants.d +++ b/constants.d @@ -29,6 +29,18 @@ immutable string[] pragmas = [ "startaddress" ]; +/** + * Linkage types + */ +immutable string[] linkages = [ + "C", + "C++", + "D", + "Pascal", + "System", + "Windows", +]; + /** * Traits arguments */ diff --git a/server.d b/server.d index 8e14cf0..f799915 100644 --- a/server.d +++ b/server.d @@ -27,7 +27,7 @@ import msgpack; import messages; import autocomplete; -void main(string[] args) +int main(string[] args) { ushort port = 9166; bool help; @@ -85,6 +85,7 @@ void main(string[] args) assert(s.send(responseBytes) == responseBytes.length); } } + return 0; } void printHelp(string programName)