pub fn collect_input(
stdin_flag: Option<&str>,
cli_kwargs: HashMap<String, Value>,
large_input: bool,
) -> Result<HashMap<String, Value>, CliError>Expand description
Merge CLI keyword arguments with optional JSON input.
Resolution order (highest priority first):
- CLI flags (non-
Nullvalues incli_kwargs) - JSON from
stdin_flag:Some("-")→ read from stdinSome(path)→ read from file atpathNone→ no JSON input, return CLI kwargs only
§Arguments
stdin_flag—Some("-")for stdin,Some(path)for a file,Noneto skipcli_kwargs— map of flag name → value (Nullvalues are ignored)large_input— iffalse, reject payloads exceeding 10 MiB
§Errors
Returns CliError (exit code 2) on oversized input, invalid JSON, non-object
JSON, or file open failures.