#### DUMP

#### Synopsis

    HELP:   Dumps all elements in raw XML format (also useful for non XML elements)
    TYPE:   OBJECT
    SYNTAX: DUMP(DATAFMT=BINARY/HEXADECIMAL/NUMERIC,ATTRFMT=BINARY/HEXADECIMAL/NUMERIC,HASHFMT=BINARY/HEXADECIMAL/NUMERIC,INDSIZ=num,INDCHR=SPACE/TABULATOR,BUFSIZ=num,INICNT=num)

#### Description

The dump method takes lists of arbitrary FLAM elements and dumps them into XML format. For each element list, an `<elementList>...<elementList>` block is created, containing an arbitrary number of `<element>...</element>` tags. A FLAM element contains element data, an element type, attributes and a hash, which are represented as body, `type`, `attr` and `hash` attributes, respectively. The attributes `attr` and `hash` are optional and only written if they contain any data.

The output format of data, attributes and hashes can be configured independantly. Valid formats are binary (may result in a not wellformed XML document), hexadecimal or numeric (bytes printed as decimal numbers separated by whitespace). The output format configuration is saved as part of the XML document.

The resulting XML document has the following form:

    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <flam>
      <configuration>
        <dumpFormat>
          <data>...</data>
          <attr>...</attr>
          <hash>...</hash>
        </dumpFormat>
      </configuration>
      <elementList>
        <element type="..." attr="..." hash="...">...</element>
        <element type="..." attr="..." hash="...">...</element>
        ...
      </elementList>
      <elementList>
        ...
      </elementList>
      ...
    </flam>

#### Arguments

- `NUMBER: DATAFMT=BINARY/HEXADECIMAL/NUMERIC - Format in which element data is dumped [HEX]`
  - `BINARY - Dump in binary format`
  - `HEXADECIMAL - Dump in hexadecimal format`
  - `NUMERIC - Dump in numeric (decimal) format`
- `NUMBER: ATTRFMT=BINARY/HEXADECIMAL/NUMERIC - Format in which attribute data is dumped [HEX]`
  - `BINARY - Dump in binary format`
  - `HEXADECIMAL - Dump in hexadecimal format`
  - `NUMERIC - Dump in numeric (decimal) format`
- `NUMBER: HASHFMT=BINARY/HEXADECIMAL/NUMERIC - Format in which hash data is dumped [HEX]`
  - `BINARY - Dump in binary format`
  - `HEXADECIMAL - Dump in hexadecimal format`
  - `NUMERIC - Dump in numeric (decimal) format`
- `NUMBER: INDSIZ=num - Number of indentation characters per indentation level [2 (SPACE) or 1 (TAB)]`
- `NUMBER: INDCHR=SPACE/TABULATOR - Indentation character used to indent XML tags [SPACE]`
  - `SPACE - Use the space character as indentation character`
  - `TABULATOR - Use the tabulator character as indentation character`
- `NUMBER: BUFSIZ=num - Initial buffer size for preallocation [65536]`
- `NUMBER: INICNT=num - Initial amount of elements for preallocation [128]`