<s> package org . eclipse . jdt . internal . compiler . impl ; public class LongConstant extends Constant { private static final LongConstant ZERO = new LongConstant ( 0L ) ; private static final LongConstant MIN_VALUE = new LongConstant ( Long . MIN_VALUE ) ; private long value ; public static Constant fromValue ( long value ) { if ( value == 0L ) { return ZERO ; } else if ( value == Long . MIN_VALUE ) { return MIN_VALUE ; } return new LongConstant ( value ) ; } private LongConstant ( long value ) { this . value = value ; } public byte byteValue ( ) { return ( byte ) this . value ; } public char charValue ( ) { return ( char ) this . value ; } public double doubleValue ( ) { return this . value ; } public float floatValue ( ) { return this . value ; } public int intValue ( ) { return ( int ) this . value ; } public long longValue ( ) { return this . value ; } public short shortValue ( ) { return ( short ) this . value ; } public String stringValue ( ) { return String . valueOf ( this . value ) ; } public String toString ( ) { return "(long)" + this . value ; } public int typeID ( ) { return T_long ; } public int hashCode ( ) { return ( int ) ( this . value ^ ( this . value >>> 32 ) ) ; } public boolean equals ( Object obj ) { if ( this == obj ) { return true ; } if ( obj == null ) { return false ; } if ( getClass ( ) != obj . getClass ( ) ) { return false ; } LongConstant other = ( LongConstant ) obj ; return this . value == other . value ; } } </s>