Autocomplete extern(...) declarations

This commit is contained in:
Hackerpilot 2013-07-27 03:13:34 +00:00
parent 1f3042424c
commit 29178522d3
3 changed files with 22 additions and 1 deletions

View File

@ -72,6 +72,14 @@ AutocompleteResponse complete(AutocompleteRequest request, string[] importPaths)
response.completions ~= versions[i]; response.completions ~= versions[i];
response.completionKinds ~= CompletionKind.keyword; 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; break;
case TokenType.pragma_: case TokenType.pragma_:
response.completionType = CompletionType.identifiers; response.completionType = CompletionType.identifiers;

View File

@ -29,6 +29,18 @@ immutable string[] pragmas = [
"startaddress" "startaddress"
]; ];
/**
* Linkage types
*/
immutable string[] linkages = [
"C",
"C++",
"D",
"Pascal",
"System",
"Windows",
];
/** /**
* Traits arguments * Traits arguments
*/ */

View File

@ -27,7 +27,7 @@ import msgpack;
import messages; import messages;
import autocomplete; import autocomplete;
void main(string[] args) int main(string[] args)
{ {
ushort port = 9166; ushort port = 9166;
bool help; bool help;
@ -85,6 +85,7 @@ void main(string[] args)
assert(s.send(responseBytes) == responseBytes.length); assert(s.send(responseBytes) == responseBytes.length);
} }
} }
return 0;
} }
void printHelp(string programName) void printHelp(string programName)