CDB_File::BiIndex::Generator - build the cdbmake files for a bidirectional index


        use CDB_File::BiIndex::Generator;
        $gen = new CDB_File::BiIndex::Generator "test";
        $gen->add_relation("USA", "London");
        $gen->add_relation("Malawi", "Lilongwe");


A CDB_File::BiIndex is designed to keep pairs of values and be able to look up bi-directional multivalued relations. This package is designed to generate one of these indexes statically using CDB.

At present this package is a complete hack designed simply to output the two lists in the very specific case which I need.


Please see the example in the CDB_File::BiIndex documentation. This shows both how to generate and use an index.



        new (CLASS, database_filenamebase)
        new (CLASS, first_database_filename, second_database_filename)

New opens and sets up the databases ready for writing.

$gen->add_relation( first , second )

Adds a key value pair to the database.


Writes the database so that it is ready for use by CDB_BiIndex.

add_list_first / add_list_second ->(key, list_reference)

These functions add an entire set of relations of one string to a list of other strings

add_list_first puts makes the key a key in the first index. add_list_second puts the list in the first index and the key in the second.