loadConfig method
Loads configuration from YAML file and command line arguments
yamlConfig - Configuration from the YAML file
argResults - Command line arguments
Returns a validated Json2DartConfig instance
Implementation
Json2DartConfig loadConfig(
Map<dynamic, dynamic> yamlConfig,
ArgResults? argResults,
) {
// Extract YAML configuration
final config = _extractYamlConfig(yamlConfig);
// Override with command line arguments
final finalConfig = _mergeWithArguments(config, argResults);
// Validate configuration
final errors = finalConfig.validate();
if (errors.isNotEmpty) {
throw ArgumentError(
'Configuration validation failed:\n${errors.join('\n')}');
}
return finalConfig;
}