Package ghidra.program.model.data

# Enum Class StringLayoutEnum

java.lang.Object
java.lang.Enum<StringLayoutEnum>
ghidra.program.model.data.StringLayoutEnum

All Implemented Interfaces:
  `Serializable`, `Comparable<StringLayoutEnum>`, `Constable`

public enum StringLayoutEnum extends Enum<StringLayoutEnum>
Controls strings termination

- `FIXED_LEN`
- `CHAR_SEQ`
- `NULL_TERMINATED_UNBOUNDED`
- `NULL_TERMINATED_BOUNDED`
- `PASCAL_255`
- `PASCAL_64k`

- ## Nested Class Summary

  ## Nested classes/interfaces inherited from class java.lang.Enum

  `Enum.EnumDesc<E extends Enum<E>>`

- ## Enum Constant Summary

  Enum Constants
  Enum Constant
  Description
  `CHAR_SEQ`
  Fixed length sequence of characters, all nulls retained.
  `FIXED_LEN`
  Fixed length string, trailing nulls trimmed, interior nulls retained.
  `NULL_TERMINATED_BOUNDED`
  Null-terminated string that is limited to it's container's length.
  `NULL_TERMINATED_UNBOUNDED`
  Null terminated string that ignores it's container's length when searching for terminating null character.
  `PASCAL_255`
  Pascal string, using 1 byte for length field, max 255 char elements.
  `PASCAL_64k`
  Pascal string, using 2 bytes for length field, max 64k char elements

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `isFixedLen()`
  Returns true if this layout is one of the fixed-size types.
  `boolean`
  `isNullTerminated()`
  Returns true if this layout is one of the null terminated types.
  `boolean`
  `isPascal()`
  Returns true if this layout is one of the pascal types.
  `boolean`
  `shouldTrimTrailingNulls()`
  Returns true if this layout should have its trailing null characters trimmed.
  `String`
  `toString()`
  `static StringLayoutEnum`
  `valueOf(String name)`
  Returns the enum constant of this class with the specified name.
  `static StringLayoutEnum[]`
  `values()`
  Returns an array containing the constants of this enum class, in the order they are declared.

  ### Methods inherited from class java.lang.Enum

  `clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, valueOf`

  ### Methods inherited from class java.lang.Object

  `getClass, notify, notifyAll, wait, wait, wait`

- ## Enum Constant Details

  - ### FIXED_LEN

    public static final StringLayoutEnum FIXED_LEN
    Fixed length string, trailing nulls trimmed, interior nulls retained.

  - ### CHAR_SEQ

    public static final StringLayoutEnum CHAR_SEQ
    Fixed length sequence of characters, all nulls retained.

  - ### NULL_TERMINATED_UNBOUNDED

    public static final StringLayoutEnum NULL_TERMINATED_UNBOUNDED
    Null terminated string that ignores it's container's length when searching for terminating null character.

  - ### NULL_TERMINATED_BOUNDED

    public static final StringLayoutEnum NULL_TERMINATED_BOUNDED
    Null-terminated string that is limited to it's container's length.

  - ### PASCAL_255

    public static final StringLayoutEnum PASCAL_255
    Pascal string, using 1 byte for length field, max 255 char elements.

  - ### PASCAL_64k

    public static final StringLayoutEnum PASCAL_64k
    Pascal string, using 2 bytes for length field, max 64k char elements

- ## Method Details

  - ### values

    public static StringLayoutEnum[] values()
    Returns an array containing the constants of this enum class, in the order they are declared.
    Returns:
      an array containing the constants of this enum class, in the order they are declared

  - ### valueOf

    public static StringLayoutEnum valueOf(String name)
    Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
    Parameters:
      `name` - the name of the enum constant to be returned.
    Returns:
      the enum constant with the specified name
    Throws:
      `IllegalArgumentException` - if this enum class has no constant with the specified name
      `NullPointerException` - if the argument is null

  - ### toString

    public String toString()
    Overrides:
      `toString` in class `Enum<StringLayoutEnum>`

  - ### isPascal

    public boolean isPascal()
    Returns true if this layout is one of the pascal types.
    Returns:
      boolean true if pascal

  - ### isNullTerminated

    public boolean isNullTerminated()
    Returns true if this layout is one of the null terminated types.
    Returns:
      boolean true if null terminated string

  - ### shouldTrimTrailingNulls

    public boolean shouldTrimTrailingNulls()
    Returns true if this layout should have its trailing null characters trimmed.
    Returns:
      boolean true if trailing nulls should be trimmed

  - ### isFixedLen

    public boolean isFixedLen()
    Returns true if this layout is one of the fixed-size types.
    Returns:
      boolean true if fixed length