class FeatureValidator {

  void validateOptionsThrowing(OptionCollection options) {
    if (isBoolOption(options)) {
      validateBooleanOptionsThrowing(options);
    }

    if (isStringOption(options)) {
      validateStringOptionsThrowing(options);
    }

    if (OptionType.flag != options.getOption()) {
      validateWeightsThrowing(options);
    }
  }

}