BitField.java 2.3 KB
package org.apache.commons.lang3;

public class BitField
{
  private final int a;
  private final int b;
  
  public BitField(int paramInt)
  {
    this.a = paramInt;
    if (paramInt != 0) {}
    for (paramInt = Integer.numberOfTrailingZeros(paramInt);; paramInt = 0)
    {
      this.b = paramInt;
      return;
    }
  }
  
  public int clear(int paramInt)
  {
    return (this.a ^ 0xFFFFFFFF) & paramInt;
  }
  
  public byte clearByte(byte paramByte)
  {
    return (byte)clear(paramByte);
  }
  
  public short clearShort(short paramShort)
  {
    return (short)clear(paramShort);
  }
  
  public int getRawValue(int paramInt)
  {
    return this.a & paramInt;
  }
  
  public short getShortRawValue(short paramShort)
  {
    return (short)getRawValue(paramShort);
  }
  
  public short getShortValue(short paramShort)
  {
    return (short)getValue(paramShort);
  }
  
  public int getValue(int paramInt)
  {
    return getRawValue(paramInt) >> this.b;
  }
  
  public boolean isAllSet(int paramInt)
  {
    return (this.a & paramInt) == this.a;
  }
  
  public boolean isSet(int paramInt)
  {
    return (this.a & paramInt) != 0;
  }
  
  public int set(int paramInt)
  {
    return this.a | paramInt;
  }
  
  public int setBoolean(int paramInt, boolean paramBoolean)
  {
    if (paramBoolean) {
      return set(paramInt);
    }
    return clear(paramInt);
  }
  
  public byte setByte(byte paramByte)
  {
    return (byte)set(paramByte);
  }
  
  public byte setByteBoolean(byte paramByte, boolean paramBoolean)
  {
    if (paramBoolean) {
      return setByte(paramByte);
    }
    return clearByte(paramByte);
  }
  
  public short setShort(short paramShort)
  {
    return (short)set(paramShort);
  }
  
  public short setShortBoolean(short paramShort, boolean paramBoolean)
  {
    if (paramBoolean) {
      return setShort(paramShort);
    }
    return clearShort(paramShort);
  }
  
  public short setShortValue(short paramShort1, short paramShort2)
  {
    return (short)setValue(paramShort1, paramShort2);
  }
  
  public int setValue(int paramInt1, int paramInt2)
  {
    return (this.a ^ 0xFFFFFFFF) & paramInt1 | paramInt2 << this.b & this.a;
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/org/apache/commons/lang3/BitField.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */