run method
Runs this command.
The return value is wrapped in a Future if necessary and returned by
CommandRunner.runCommand.
Implementation
@override
void run() async {
try {
// Validate inputs
if (!_validateInputs()) return;
// Prepare configuration
final config = _prepareConfiguration();
// Validate configuration
if (!_configManager.validateConfig(config)) return;
// Execute generation
final success = await _executeGeneration(config);
if (success) {
_reportSuccess(config.featureName);
}
} catch (e, stackTrace) {
StatusHelper.failed(
'Feature generation failed: $e',
suggestion: 'Check your configuration and try again',
examples: [
'morpheme feature <feature-name> --help',
'morpheme generate feature <feature-name>',
],
);
print('Stack trace: $stackTrace');
}
}