Interface ArrayStringable

All Superinterfaces:
DataType
All Known Implementing Classes:
AbstractIntegerDataType, AbstractSignedIntegerDataType, AbstractUnsignedIntegerDataType, BooleanDataType, ByteDataType, CharDataType, DWordDataType, Integer16DataType, Integer3DataType, Integer5DataType, Integer6DataType, Integer7DataType, IntegerDataType, LongDataType, LongLongDataType, QWordDataType, ShortDataType, SignedByteDataType, SignedCharDataType, SignedDWordDataType, SignedQWordDataType, SignedWordDataType, UnsignedCharDataType, UnsignedInteger16DataType, UnsignedInteger3DataType, UnsignedInteger5DataType, UnsignedInteger6DataType, UnsignedInteger7DataType, UnsignedIntegerDataType, UnsignedLongDataType, UnsignedLongLongDataType, UnsignedShortDataType, WideChar16DataType, WideChar32DataType, WideCharDataType, WordDataType

public interface ArrayStringable extends DataType
ArrayStringable identifies those data types which when formed into an array can be interpreted as a string (e.g., character array). The Array implementations will leverage this interface as both a marker and to generate appropriate representations and values for data instances.
  • Method Details

    • hasStringValue

      boolean hasStringValue(Settings settings)
      For cases where an array of this type exists, determines if a String value will be returned.

      Parameters:
      settings -
      Returns:
      true if array of this type with the specified settings will return a String value.
    • getArrayString

      default String getArrayString(MemBuffer buf, Settings settings, int length)
      For cases where an array of this type exists, get the array value as a String. When data corresponds to character data it should generally be expressed as a string. A null value is returned if not supported or memory is uninitialized.
      Parameters:
      buf - data buffer
      settings - data settings
      length - length of array
      Returns:
      array value expressed as a string or null if data is not character data
    • getArrayDefaultLabelPrefix

      String getArrayDefaultLabelPrefix(MemBuffer buf, Settings settings, int len, DataTypeDisplayOptions options)
      For cases where an array of this type exists, get the appropriate string to use as the default label prefix for the array.
      Parameters:
      buf - memory buffer containing the bytes.
      settings - the Settings object
      len - the length of the data.
      options - options for how to format the default label prefix.
      Returns:
      the default label prefix or null if none specified.
    • getArrayDefaultOffcutLabelPrefix

      String getArrayDefaultOffcutLabelPrefix(MemBuffer buf, Settings settings, int len, DataTypeDisplayOptions options, int offcutLength)
      For cases where an array of this type exists, get the appropriate string to use as the default label prefix, taking into account the fact that there exists a reference to the data that references offcutLength bytes into this type
      Parameters:
      buf - memory buffer containing the bytes.
      settings - the Settings object.
      len - the length of the data.
      options - options for how to format the default label prefix.
      offcutLength - the length of the offcut label prefix.
      Returns:
      the default label prefix or null if none specified.
    • getArrayStringable

      static ArrayStringable getArrayStringable(DataType dt)
      Get the ArrayStringable for a specified data type. Not used on an Array DataType, but on Array's element's type.

      Parameters:
      dt - data type
      Returns:
      ArrayStringable object, or null.