commandlineparser / commandlineparser/commandline
Question - can f# matching handle verbs?
- Ngôn ngữ chính
- C#
- Star
- 4.8k
- Fork
- 478
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
Sorry for question as issue, googled a bit and had no luck.
Is the F# matching support meant to work with verbs? I'm trying
```fs
[]
type UploadOptions = {
[] FileName: string;
[] RootUrl: string;
}
[]
type OtherOptions = {
[] Opt: string;
}
let getOpts argv : CLIOptions =
let result = CommandLine.Parser.Default.ParseArguments(argv)
match result with
| :? Parsed as p -> p.Value // <-- compile error here
| :? Parsed as p -> p.Value
| :? NotParsed as e ->
let errs = e.Errors |> Seq.map string |> Seq.toList
failwith <| String.Join("\n", errs)
| _ -> failwith "bang"
```
But this fails to compile:
```
Type constraint mismatch. The type
'Parsed'
is not compatible with type
'ParserResult'
```
I don't have a good understanding of how C# types map to F# sorry, so apologies if I'm missing something obvious.
EDIT: Never mind, found the readme. Consider this a feature request to not need to double match against `obj`. :)
Hướng dẫn đóng góp
Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này
Hướng nghiên cứu
Bắt đầu với hướng dẫn hỗ trợ F# trong README và các kiểu ParserResult, Parsed và NotParsed được nêu trong issue. Xác định cách các kết quả riêng theo từng verb được cung cấp cho các caller F#. Được xem là hoàn thành khi caller có thể match kết quả của command đã được parse mà không phải match hai lần với obj.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- csharp
- Lĩnh vực
- cli
- Loại issue
- Tính năng
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 25/100