(cls, lower: "SchemaRange", upper: "SchemaRange")
return False
Determines if the range given by taking lower bounds from lower and upper bound from upper is empty (contains nothing)
        is_integer is assumed to be their disjunction
Determines if the range given by taking lower bounds from lower and upper bound from upper is empty (contains nothing)
        is_integer is assumed to be their disjunction
Determines if the range given by taking lower bounds from lower and upper bound from upper is empty ( contains nothing ) is_integer is assumed to be their disjunction
def is_empty2(cls, lower: "SchemaRange", upper: "SchemaRange") -> bool:
        """Determines if the range given by taking lower bounds from lower and upper bound from upper is empty (contains nothing)
        is_integer is assumed to be their disjunction
        """
        is_integer = lower.is_integer or upper.is_integer

        if lower.minimum is not None and upper.maximum is not None:
            if lower.minimum > upper.maximum:
                return True
            if lower.minimum == upper.maximum and (
                lower.exclusive_minimum or upper.exclusive_maximum
            ):
                return True
            if (
                is_integer
                and lower.exclusive_minimum
                and upper.exclusive_maximum
                and lower.minimum + 1 == upper.maximum
            ):
                return True
        return False
def is_empty2 ( cls , lower : "SchemaRange" , upper : "SchemaRange" ) -> bool : is_integer = lower . is_integer or upper . is_integer if lower . minimum is not None and upper . maximum is not None : if lower . minimum > upper . maximum : return True if lower . minimum == upper . maximum and ( lower . exclusive_minimum or upper . exclusive_maximum ) : return True if ( is_integer and lower . exclusive_minimum and upper . exclusive_maximum and lower . minimum + 1 == upper . maximum ) : return True return False