Skip to content

Commit 9526c22

Browse files
committed
Integrate CSharpLanguageServer.Options into .Program
1 parent 44c73ce commit 9526c22

File tree

3 files changed

+16
-21
lines changed

3 files changed

+16
-21
lines changed

src/CSharpLanguageServer/CSharpLanguageServer.fsproj

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,6 @@
6666
<Compile Include="Handlers/Workspace.fs" />
6767
<Compile Include="Handlers/WorkspaceSymbol.fs" />
6868
<Compile Include="Lsp/Server.fs" />
69-
<Compile Include="Options.fs" />
7069
<Compile Include="Program.fs" />
7170
</ItemGroup>
7271

src/CSharpLanguageServer/Options.fs

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/CSharpLanguageServer/Program.fs

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,31 @@ open Serilog.Events
1111
open CSharpLanguageServer.Types
1212
open CSharpLanguageServer.Lsp
1313

14+
type CLIArguments =
15+
| [<AltCommandLine("-v")>] Version
16+
| [<AltCommandLine("-l")>] LogLevel of level:string
17+
| [<AltCommandLine("-s")>] Solution of solution:string
18+
with
19+
interface IArgParserTemplate with
20+
member s.Usage =
21+
match s with
22+
| Version -> "display versioning information"
23+
| Solution _ -> ".sln file to load (relative to CWD)"
24+
| LogLevel _ -> "log level, <log|info|warning|error>; default is `log`"
25+
1426
[<EntryPoint>]
1527
let entry args =
1628
try
17-
let argParser = ArgumentParser.Create<Options.CLIArguments>(programName = "csharp-ls")
29+
let argParser = ArgumentParser.Create<CLIArguments>(programName = "csharp-ls")
1830
let serverArgs = argParser.Parse args
1931

20-
serverArgs.TryGetResult(<@ Options.CLIArguments.Version @>)
32+
serverArgs.TryGetResult(<@ CLIArguments.Version @>)
2133
|> Option.iter (fun _ -> printfn "csharp-ls, %s"
2234
(Assembly.GetExecutingAssembly().GetName().Version |> string)
2335
exit 0)
2436

2537
let logLevelArg =
26-
serverArgs.TryGetResult(<@ Options.CLIArguments.LogLevel @>)
38+
serverArgs.TryGetResult(<@ CLIArguments.LogLevel @>)
2739
|> Option.defaultValue "log"
2840

2941
let logLevel =
@@ -52,7 +64,7 @@ let entry args =
5264

5365
let settings = {
5466
ServerSettings.Default with
55-
SolutionPath = serverArgs.TryGetResult(<@ Options.CLIArguments.Solution @>)
67+
SolutionPath = serverArgs.TryGetResult(<@ CLIArguments.Solution @>)
5668
LogLevel = logLevelArg
5769
}
5870

0 commit comments

Comments
 (0)