You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
FlutterX/bin/parse_arguments.dart

40 lines
867 B

class Args {
Args(this.mode, this.flavor, this.isReplaceMode);
String mode;
String flavor;
bool isReplaceMode;
@override
String toString() {
return 'Current mode is $mode, and flavor is ${flavor == '' ? 'default' : flavor}${isReplaceMode ? ' , for replace' : ''}';
}
}
Args parse(arguments) {
var args = Args('', 'default', false);
for (var value in arguments) {
if (value == '--release') {
args.mode = 'release';
} else if (value == '--debug') {
args.mode = 'debug';
}
if (args.mode == '' && value == 'build') {
args.mode = 'release';
}
if (value == '--flavor') {
args.flavor = arguments[arguments.indexOf('--flavor') + 1];
}
if (value == '--replace') {
args.isReplaceMode = true;
}
}
if (args.mode == '') {
args.mode = 'debug';
}
print(args);
return args;
}