//System.err.println("ModelVerb.isCloserMatch():"+new Date());
if (isDescendantOf(other))
return true;
WordMatcher infinitiveMatcher;
try {
infinitiveMatcher = getInfinitiveMatcher(infinitive, reflexive);
}
catch (IllegalArgumentException iae) {
return false;
}
WordMatcher otherMatcher;
try {
otherMatcher = other.getInfinitiveMatcher(infinitive, reflexive);
}
catch (IllegalArgumentException iae) {
return true;
}
if ((infinitiveMatcher.getMatchType() == MatchType.PATTERN || infinitiveMatcher.getMatchType() == MatchType.SUFFIX) &&
(otherMatcher.getMatchType() == MatchType.PATTERN || otherMatcher.getMatchType() == MatchType.SUFFIX)) {
return getMatchStringPointsValue(infinitiveMatcher) >
getMatchStringPointsValue(otherMatcher);
}
if (infinitiveMatcher.getMatchType() != otherMatcher.getMatchType())
return infinitiveMatcher.getMatchType().ordinal() > otherMatcher.getMatchType().ordinal();
return false;
}