/** @since 0.8 or earlier */ @Override public char profile(char value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Character && (char) snapshot == value) { return (char) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public long profile(long value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Long && (long) snapshot == value) { return (long) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public byte profile(byte value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Byte && (byte) snapshot == value) { return (byte) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public char profile(char value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Character && (char) snapshot == value) { return (char) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public float profile(float value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Float && exactCompare((float) snapshot, value)) { return (float) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public byte profile(byte value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Byte && (byte) snapshot == value) { return (byte) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public boolean profile(boolean value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Boolean && (boolean) snapshot == value) { return (boolean) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public short profile(short value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Short && (short) snapshot == value) { return (short) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public boolean profile(boolean value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Boolean && (boolean) snapshot == value) { return (boolean) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public double profile(double value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Double && exactCompare((double) snapshot, value)) { return (double) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public int profile(int value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Integer && (int) snapshot == value) { return (int) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public long profile(long value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Long && (long) snapshot == value) { return (long) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public double profile(double value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Double && exactCompare((double) snapshot, value)) { return (double) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public short profile(short value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Short && (short) snapshot == value) { return (short) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public float profile(float value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Float && exactCompare((float) snapshot, value)) { return (float) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }
/** @since 0.8 or earlier */ @Override public int profile(int value) { Object snapshot = this.cachedValue; if (snapshot != GENERIC) { if (snapshot instanceof Integer && (int) snapshot == value) { return (int) snapshot; } else { CompilerDirectives.transferToInterpreterAndInvalidate(); slowPath(value); } } return value; }