private void generateLowerRangeCheck(Versions ifVersions,
                                         Versions ifNotVersions,
                                         CodeBuffer buffer) {
        if (ifMember != null) {
            buffer.printf("if (_version >= %d) {%n", containingVersions.lowest());
            buffer.incrementIndent();
            ifMember.generate(ifVersions);
            buffer.decrementIndent();
            if (ifNotMember != null) {
                buffer.printf("} else {%n");
                buffer.incrementIndent();
                ifNotMember.generate(ifNotVersions);
                buffer.decrementIndent();
            }
            buffer.printf("}%n");
        } else if (ifNotMember != null) {
            buffer.printf("if (_version < %d) {%n", containingVersions.lowest());
            buffer.incrementIndent();
            ifNotMember.generate(ifNotVersions);
            buffer.decrementIndent();
            buffer.printf("}%n");
        }
    }
If this is set, VersionConditional#generate will throw an exception if
the 'ifMember' clause is never used.  This is useful as a sanity check
in some cases where it doesn't make sense for the condition to always be
false.  For example, when generating a Message#write function, 
we might check that the version we're writing is supported.  It wouldn't
make sense for this check to always be false, since that would mean that
no versions at all were supported.
generator/src/main/java/org/apache/kafka/message/VersionConditional.java