Note: this file might not always be in sync with reality, but should be
useful nevertheless.


== How to add support for a new table for the enhanced suffix array ==

suffixarray.h:
* Extend fid_Suffixarray structure.
* Add suitable fid_TABLE_... definition and extend fid_TABLES_OFFLINE.

verify.h:
* Extend VERIFY_OFFLINE_REQUEST() macro.

suffixarray.c:
* Add code for initialization and freeing to fid_suffixarray_init(),
  fid_suffixarray_realize(), and fid_suffixarray_free().
* Add loading code to map_more_tables() and tune_tables().
* Add code to fid_suffixarray_dump().

slowbuildesa.c:
* Add code to allocate the table file in compute_esa().
* Add some code to generate the table, called from compute_esa().

buildesa.at/compare.sh.in/cleanup.sh.in/atlocal.in:
* Write a test program that checks the table's integrity (the check should
  work differently from how the table computation works, if possible, to
  avoid copy-and-paste bugs), and add it to the test suite.
* Make sure to add a reference file to the test suite, for all byte orders
  and word sizes.


Always document all new data fields and functions.

Execute doxygen.

Check with ``make distcheck'' before checking in to SVN, especially check
that the Makefile.am that enumerates the test data files is up to date.
