[cdc_stream] Switch asset_stream_manager to use Lyra (#25)

Switch asset_stream_manager to use Lyra

Lyra has a nice simple interface, but a few quirks that we work
around, mainly in the BaseCommand class:
- It does not support return values from running a command.
- It does not support return values from a custom arg parser.
- Lyra interprets --bad_arg as positional argument.

Fixes #15
This commit is contained in:
Lutz Justen
2022-12-01 10:36:48 +01:00
committed by GitHub
parent 7d7fcc67b9
commit a381541d1b
11 changed files with 631 additions and 291 deletions

35
third_party/lyra/BUILD.bazel vendored Normal file
View File

@@ -0,0 +1,35 @@
# Description:
# This project provides Linux compatible Dirent interface for Microsoft Windows.
#
licenses(["notice"]) # BSL-1.0 license
exports_files(["LICENSE"])
package(default_visibility = ["//visibility:public"])
cc_library(
name = "lyra",
hdrs = [
"include/lyra/arg.hpp",
"include/lyra/args.hpp",
"include/lyra/arguments.hpp",
"include/lyra/cli.hpp",
"include/lyra/cli_parser.hpp",
"include/lyra/command.hpp",
"include/lyra/detail",
"include/lyra/exe_name.hpp",
"include/lyra/group.hpp",
"include/lyra/help.hpp",
"include/lyra/literal.hpp",
"include/lyra/lyra.hpp",
"include/lyra/main.hpp",
"include/lyra/opt.hpp",
"include/lyra/option_style.hpp",
"include/lyra/parser.hpp",
"include/lyra/parser_result.hpp",
"include/lyra/val.hpp",
"include/lyra/version.hpp",
],
includes = ["include"],
)