Package ghidra.program.model.data
Enum StringLayoutEnum
- java.lang.Object
-
- java.lang.Enum<StringLayoutEnum>
-
- ghidra.program.model.data.StringLayoutEnum
-
- All Implemented Interfaces:
java.io.Serializable
,java.lang.Comparable<StringLayoutEnum>
public enum StringLayoutEnum extends java.lang.Enum<StringLayoutEnum>
Controls strings termination
-
-
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
All Methods Static Methods Instance Methods Concrete Methods 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.java.lang.String
toString()
static StringLayoutEnum
valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name.static StringLayoutEnum[]
values()
Returns an array containing the constants of this enum type, in the order they are declared.
-
-
-
Enum Constant Detail
-
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 Detail
-
values
public static StringLayoutEnum[] values()
Returns an array containing the constants of this enum type, in the order they are declared. This method may be used to iterate over the constants as follows:for (StringLayoutEnum c : StringLayoutEnum.values()) System.out.println(c);
- Returns:
- an array containing the constants of this enum type, in the order they are declared
-
valueOf
public static StringLayoutEnum valueOf(java.lang.String name)
Returns the enum constant of this type with the specified name. The string must match exactly an identifier used to declare an enum constant in this type. (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:
java.lang.IllegalArgumentException
- if this enum type has no constant with the specified namejava.lang.NullPointerException
- if the argument is null
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.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
-
-