Validate C# json/object-api options (#6985)
This commit is contained in:
parent
c555ee8fac
commit
b78002ff3e
|
@ -180,7 +180,8 @@ To use:
|
|||
An additional feature of the object API is the ability to allow you to
|
||||
serialize & deserialize a JSON text.
|
||||
To use Json Serialization, add `--cs-gen-json-serializer` option to `flatc` and
|
||||
add `Newtonsoft.Json` nuget package to csproj.
|
||||
add `Newtonsoft.Json` nuget package to csproj. This requires explicitly setting
|
||||
the `--gen-object-api` option as well.
|
||||
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~{.cs}
|
||||
// Deserialize MonsterT from json
|
||||
|
@ -192,7 +193,7 @@ add `Newtonsoft.Json` nuget package to csproj.
|
|||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
* Limitation
|
||||
* `hash` attribute currentry not supported.
|
||||
* `hash` attribute currently not supported.
|
||||
* NuGet package Dependency
|
||||
* [Newtonsoft.Json](https://github.com/JamesNK/Newtonsoft.Json)
|
||||
|
||||
|
|
|
@ -74,7 +74,7 @@ def flatc(
|
|||
cmd += [schema] if isinstance(schema, str) else schema
|
||||
if data:
|
||||
cmd += [data] if isinstance(data, str) else data
|
||||
subprocess.run(cmd, cwd=cwd)
|
||||
result = subprocess.run(cmd, cwd=cwd, check=True)
|
||||
|
||||
|
||||
# Glob a pattern relative to file path
|
||||
|
|
|
@ -184,6 +184,8 @@ std::string FlatCompiler::GetUsageString(const char *program_name) const {
|
|||
" data using schema-less FlexBuffers.\n"
|
||||
" --no-warnings Inhibit all warning messages.\n"
|
||||
" --cs-global-alias Prepend \"global::\" to all user generated csharp classes and structs.\n"
|
||||
" --cs-gen-json-serializer Allows (de)serialization of JSON text in the Object\n"
|
||||
" API. (requires --gen-object-api).\n"
|
||||
"FILEs may be schemas (must end in .fbs), binary schemas (must end in .bfbs),\n"
|
||||
"or JSON files (conforming to preceding schema). FILEs after the -- must be\n"
|
||||
"binary flatbuffer format files.\n"
|
||||
|
@ -435,6 +437,12 @@ int FlatCompiler::Compile(int argc, const char **argv) {
|
|||
Error("no options: specify at least one generator.", true);
|
||||
}
|
||||
|
||||
if (opts.cs_gen_json_serializer && !opts.generate_object_based_api) {
|
||||
Error(
|
||||
"--cs-gen-json-serializer requires --gen-object-api to be set as "
|
||||
"well.");
|
||||
}
|
||||
|
||||
flatbuffers::Parser conform_parser;
|
||||
if (!conform_to_schema.empty()) {
|
||||
std::string contents;
|
||||
|
|
Loading…
Reference in New Issue