Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jif.visit
Class IntegerBoundsChecker.Bounds

    java.lang.Object
      jif.visit.IntegerBoundsChecker.Bounds

Enclosing class:
  IntegerBoundsChecker

    protected static class IntegerBoundsChecker.Bounds

extends java.lang.Object

Field Summary
`protected java.util.Set<IntegerBoundsChecker.Bound>` | `bounds`
`static java.lang.Long` | `NEG_INF`
`static java.lang.Long` | `POS_INF`
`protected IntegerBoundsChecker.Interval` | `range`

Constructor Summary
`IntegerBoundsChecker.Bounds()`
`IntegerBoundsChecker.Bounds(IntegerBoundsChecker.Interval range, java.util.Set<IntegerBoundsChecker.Bound> bounds)`
`IntegerBoundsChecker.Bounds(java.lang.Long lowerBound, java.lang.Long upperBound, java.util.Set<IntegerBoundsChecker.Bound> bounds)`

Method Summary
`boolean` | `equals(java.lang.Object o)`
`java.util.Set<IntegerBoundsChecker.Bound>` | `getBounds()`
`java.lang.Long` | `getNumericBound(IntegerBoundsChecker.Bound.Type type)`
`java.lang.Long` | `getNumericLower()`
`java.lang.Long` | `getNumericUpper()`
`int` | `hashCode()`
`boolean` | `isTighterThan(IntegerBoundsChecker.Bounds other)` Returns whether these bounds are at least as tight as the other bounds.
`IntegerBoundsChecker.Bounds` | `merge(IntegerBoundsChecker.Bounds b1)` Merge two bounds.
`IntegerBoundsChecker.Bounds` | `refine(IntegerBoundsChecker.Bounds b1)` Merge two bounds.
`static java.lang.Long` | `refine(java.lang.Long i, java.lang.Long j, IntegerBoundsChecker.Bound.Type type)`
`java.lang.String` | `toString()`

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

Field Detail

### POS_INF

    public static final java.lang.Long POS_INF

### NEG_INF

    public static final java.lang.Long NEG_INF

### range

    protected final IntegerBoundsChecker.Interval range

### bounds

    protected final java.util.Set<IntegerBoundsChecker.Bound> bounds

Constructor Detail

### IntegerBoundsChecker.Bounds

    public IntegerBoundsChecker.Bounds()

### IntegerBoundsChecker.Bounds

    public IntegerBoundsChecker.Bounds(IntegerBoundsChecker.Interval range,
                                       java.util.Set<IntegerBoundsChecker.Bound> bounds)

### IntegerBoundsChecker.Bounds

    public IntegerBoundsChecker.Bounds(java.lang.Long lowerBound,
                                       java.lang.Long upperBound,
                                       java.util.Set<IntegerBoundsChecker.Bound> bounds)

Method Detail

### refine

    public static java.lang.Long refine(java.lang.Long i,
                                        java.lang.Long j,
                                        IntegerBoundsChecker.Bound.Type type)

### getNumericLower

    public java.lang.Long getNumericLower()

### getNumericUpper

    public java.lang.Long getNumericUpper()

### getBounds

    public java.util.Set<IntegerBoundsChecker.Bound> getBounds()

### getNumericBound

    public java.lang.Long getNumericBound(IntegerBoundsChecker.Bound.Type type)

### isTighterThan

    public boolean isTighterThan(IntegerBoundsChecker.Bounds other)

  Returns whether these bounds are at least as tight as the other bounds.

### merge

    public IntegerBoundsChecker.Bounds merge(IntegerBoundsChecker.Bounds b1)

  Merge two bounds. The merge is conservative, meaning that the numeric (greatest lower) bound is the lower of the two, and the set of locals is the intersection of both.

### refine

    public IntegerBoundsChecker.Bounds refine(IntegerBoundsChecker.Bounds b1)

  Merge two bounds. The merge is not conservative, meaning that the facts in both branches are true. So the numeric (greatest lower) bound is the greater of the two, and the set of locals is the union of both.

### equals

    public boolean equals(java.lang.Object o)

  Overrides:
    `equals` in class `java.lang.Object`

### hashCode

    public int hashCode()

  Overrides:
    `hashCode` in class `java.lang.Object`

### toString

    public java.lang.String toString()

  Overrides:
    `toString` in class `java.lang.Object`

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD