metadata method

Map<String, String> metadata([
  1. String name = 'metadata'
])

Parses repeated --metadata key=value options into a map.

Implementation

Map<String, String> metadata([String name = 'metadata']) {
  final entries = argResults?.multiOption(name) ?? const <String>[];
  final result = <String, String>{};
  for (final entry in entries) {
    final index = entry.indexOf('=');
    if (index <= 0) {
      throw CliException(
        "Invalid --$name '$entry': expected key=value.",
        exitCode: 64,
      );
    }
    result[entry.substring(0, index)] = entry.substring(index + 1);
  }
  return result;
}