Package ghidra.util.datastruct

# Class StringArrayArray

java.lang.Object
ghidra.util.datastruct.StringArrayArray

All Implemented Interfaces:
  `Array`, `Serializable`

public class StringArrayArray extends Object implements Array, Serializable
Array of String[] that grows as needed.

See Also:
  - Serialized Form

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `StringArrayArray()`
  Constructor for StringArrayArray.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `copyDataTo(int index, DataTable table, int toIndex, int toCol)`
  Copies the underlying value for this array at the given index to the data table at the given index and column.
  `String[]`
  `get(int index)`
  Retrieves the String array stored at the given index.
  `int`
  `getLastNonEmptyIndex()`
  Returns the index of the last non-null or non-zero element in the array.
  `void`
  `put(int index, String[] value)`
  Stores the string array at the given index.
  `void`
  `remove(int index)`
  Removes the value at that index.

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

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### StringArrayArray

    public StringArrayArray()
    Constructor for StringArrayArray.

- ## Method Details

  - ### put

    public void put(int index, String[] value)
    Stores the string array at the given index.
    Parameters:
      `index` - the index to store the array
      `value` - the array to store

  - ### get

    public String[] get(int index)
    Retrieves the String array stored at the given index.
    Parameters:
      `index` - the index at which to retrieve the array.
    Returns:
      String[] the String array at the index.

  - ### copyDataTo

    public void copyDataTo(int index, DataTable table, int toIndex, int toCol)
    Description copied from interface: `Array`
    Copies the underlying value for this array at the given index to the data table at the given index and column. The data type at the column in the data table must be the same as the data in this array.
    Specified by:
      `copyDataTo` in interface `Array`
    Parameters:
      `index` - index into this array to copy the value from.
      `table` - the data table object to copy the data to.
      `toIndex` - the index into the destination data table to copy the value.
      `toCol` - the data table column to store the value. Must be the same type as this array.
    See Also:
      - `Array.copyDataTo(int, DataTable, int, int)`

  - ### getLastNonEmptyIndex

    public int getLastNonEmptyIndex()
    Description copied from interface: `Array`
    Returns the index of the last non-null or non-zero element in the array.
    Specified by:
      `getLastNonEmptyIndex` in interface `Array`
    See Also:
      - `Array.getLastNonEmptyIndex()`

  - ### remove

    public void remove(int index)
    Description copied from interface: `Array`
    Removes the value at that index. If the array is of primitive type (int, short, etc), then "removing" the value is equivilent to setting the value to 0;
    Specified by:
      `remove` in interface `Array`
    Parameters:
      `index` - int index into the array to remove.
    See Also:
      - `Array.remove(int)`