Class summary | |
---|---|
hashed-construction-set | inherits from construction-set |
Method summary | |
---|---|
add-cxn | (construction construction) (construction-set hashed-construction-set) &key (recover-from-trash nil) (equivalent-key (function name)) (equivalent-test (function eql)) &allow-other-keys |
clear | (construction-set hashed-construction-set) &key (include-trash t) &allow-other-keys |
constructions-hash-table | hashed-construction-set |
copy-object-content | (source hashed-construction-set) (destination hashed-construction-set) |
delete-cxn | (construction construction) (construction-set hashed-construction-set) &key (key (function identity)) (test (function eql)) (move-to-trash nil) |
hash | thing mode &key &allow-other-keys |
initialize-instance | (construction-set hashed-construction-set) &key &allow-other-keys |
An organization of fcg constructions which supports hashing and direct access
:constructions-hash-table | [Initarg] |
constructions-hash-table | [Slot] |
The hash table maps hash-keys to lists of constructions.
Is automatically is updated if you use the methods provided in this file
To implement hashing you need provide two hash functions See examples in cxn-supplier.lisp 1) given a construction should return hash keys (for production and parsing), 2) given a node should return the hashes for a node (or more precisely the cfs)