if(name == null || (name.length() < 1 && optionType != OptionType.ARGUMENT)) {
if(fieldName == null || fieldName.length() < 1)
throw new OptionParserException("Name must be defined to build an Option");
else
name = fieldName;
<BUG>}
if(type == null)</BUG>
throw new OptionParserException("Type must be defined to build an Option");
if((shortName == Character.MIN_VALUE) && name.equals("") && optionType != OptionType.ARGUMENT) {
throw new OptionParserException("Either shortName or name must be set.");

if(name == null || (name.length() < 1 && optionType != OptionType.ARGUMENT)) {
if(fieldName == null || fieldName.length() < 1)
throw new OptionParserException("Name must be defined to build an Option");
else
name = fieldName;
}
if(fieldName == null)
fieldName = name;
if(type == null)
throw new OptionParserException("Type must be defined to build an Option");
if((shortName == Character.MIN_VALUE) && name.equals("") && optionType != OptionType.ARGUMENT) {
throw new OptionParserException("Either shortName or name must be set.");
