Class NumberFormatter

java.lang.Object
com.pnfsoftware.jeb.core.units.code.asm.render.NumberFormatter

@Ser public class NumberFormatter extends Object
A number formatter used to format immediates.

Notes:

  • max 64-bit long
  • signedness: applicable to octal/decimal/hexadecimal, N/A for binary/ascii
See Also:
  • Constructor Details

    • NumberFormatter

      public NumberFormatter()
    • NumberFormatter

      public NumberFormatter(NumberFormatter defaultNumberFormatter)
      Parameters:
      defaultNumberFormatter -
  • Method Details

    • getBase

      public NumberFormatter.NumberBase getBase()
    • setBase

      public void setBase(NumberFormatter.NumberBase base)
    • rotateBase

      public NumberFormatter.NumberBase rotateBase()
    • setSignedNumber

      public void setSignedNumber(boolean signedNumber)
    • isSignedNumber

      public boolean isSignedNumber()
    • setHexaNotationType

      public void setHexaNotationType(NumberFormatter.HexaNotationType hexaNotationType)
    • getHexaNotationType

      public NumberFormatter.HexaNotationType getHexaNotationType()
    • setConstantsFormatterOverride

      public void setConstantsFormatterOverride(ConstantsFormatter cf)
    • hasConstantsFormatterOverride

      public boolean hasConstantsFormatterOverride()
    • setForcePositiveRenderingForNonBase10

      public void setForcePositiveRenderingForNonBase10(boolean enabled)
    • getForcePositiveRenderingForNonBase10

      public boolean getForcePositiveRenderingForNonBase10()
    • format

      public String format(int bitsize, long rawValue)
      Format a number using the formatter's current settings.
    • format

      public String format(int bitsize, long rawValue, NumberFormatter.NumberBase base, boolean treatAsSignedNumber)
    • format

      public String format(int bitsize, BigInteger rawValue)
    • format

      public String format(int bitsize, BigInteger rawValue, NumberFormatter.NumberBase base, boolean treatAsSignedNumber)
      Trivial implementation of a BigInteger formatter. Reverts to using format(int, long, NumberBase, boolean) if bitsize is <= 64.
      Parameters:
      bitsize -
      rawValue -
      base -
      treatAsSignedNumber -
      Returns: