CliOptParser constructor

CliOptParser(
  1. String optDefStr,
  2. CliOptCaseMode caseMode, {
  3. bool validate = false,
})

The constructor: breaks input string into option definitions and optionally validates all option and sub-option names

Implementation

CliOptParser(String optDefStr, this.caseMode, {bool validate = false}) {
  optDefs = CliOptDefList.cliOptDefsFromString(optDefStr, caseMode);
  argOptDef = optDefs.findCliOptDef('');
  _curOptDef = argOptDef;

  longNames = optDefs.getCliOptDefsLongNames(isNegative: false);
  longSubNames = optDefs.getCliOptDefsLongSubNames(isNegative: false);

  negLongNames = optDefs.getCliOptDefsLongNames(isNegative: true);
  negLongSubNames = optDefs.getCliOptDefsLongSubNames(isNegative: true);

  shortNames = optDefs.getCliOptDefsShortNames();
  shortSubNames = optDefs.getCliOptDefsShortSubNames();

  if (validate) {
    optDefs.validateCliOptDefs(
        longNames, longSubNames, shortNames, shortSubNames);
  }
}