Cravatta :: hashhistory.

Tie :: Hashistory può tenere traccia della storia di tutte le modifiche a un hash legato.
Scarica ora

Cravatta :: hashhistory. Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Prezzo:
  • FREE
  • Nome editore:
  • Mark-Jason Dominus, Plover Systems
  • Sito web dell'editore:
  • http://search.cpan.org/~mjd/Tie-HashHistory-0.03/HashHistory.pm

Cravatta :: hashhistory. Tag


Cravatta :: hashhistory. Descrizione

Tie :: L'hashistoria può tenere traccia della storia di tutte le modifiche a un hash legato. Tie :: L'hashhistory può tenere traccia della storia di tutte le modifiche a un hash.synopsis legato my $ hh = cravatta% hash => cravatta :: hashhistory, pacchetto, args ...; @Values = $ hh-> storia (chiave); cravatta :: l'hashhistory si interpone tra il tuo programma e un altro hash legato. La recupero e la conservazione dell'Hash sembra completamente normale, ma cravatta :: L'hashhistory sta tenendo un record di tutte le modifiche a ciascuna chiave, e può legare :: hashhistory ti darà un elenco di tutti i valori che la chiave ha mai avuto, in Ordine cronologico. Gli argomenti per la chiamata di cravatta dovrebbero essere legali :: hashhistory, e poi gli argomenti che avresti dato per legare per legare l'hash senza la caratteristica della storia. Ad esempio, supponiamo di voler memorizzare i tuoi dati hash in un file NDBM denominato database. Normalmente, vorresti dire: cravatta% hash => ndbm_file, 'database', $ flags, $ modalità; per ottenere questa funzione di cronologia, basta aggiungere la cravatta :: hashhistory prima di ndbm_file: my $ hh = tira% hash => Hashhistory, ndbm_file, 'database', $ flags, $ modalità; i dati saranno ancora memorizzati nel database e sarà comunque un file NDBM. Tutto il recupero e la memorizzazione saranno uguali, ma la cronologia dei cambiamenti di ciascuna chiave sarà disponibile. La chiamata di tirante restituirà un oggetto; Per scoprire la cronologia di una chiave, utilizzare il metodo della cronologia su questo oggetto. Ci vuole un argomento, che è una stringa chiave. Restituirà un elenco di tutti i valori che sono mai stati associati alla chiave, in ordine cronologico, a partire dal più recente. Ad esempio: $ hash {a} = 'primo'; $ hash {b} = 'secondo'; $ hash {a} = 'terzo'; # Sovrascrive il vecchio valore # stampa "il terzo secondo" come ti aspetteresti di stampare "$ hash {a} $ hash {b} n"; @values = $ hh-> storia ('a'); # @values ora contiene ('terzo', 'primo') @values = $ hh-> storia ('b'); # @Values ora contiene ('Secondo') Attualmente, se chiamato contesto scalare, il metodo cronologia () restituirà il numero di elementi nella cronologia. Questo comportamento può cambiare nelle versioni future. L'hash sottostante può essere affatto legato la classe hash. Per utilizzare un hash in-memoria regolare, utilizzare la cravatta :: Stdhash (distribuita con Perl) come implementazione sottostante: usa la cravatta :: hash; # * Non cravatta :: stdhash * My $ hh = cravatta% hash => cravatta :: hashhistory, cravatta :: stdshash; questo non è così efficiente come potrebbe essere perché non poteva essere perché recupera e negozi su% hash attraversare ancora due strati di pareggio . Potrei risolvere questo in una versione futura. Requisiti: · Perl.


Cravatta :: hashhistory. Software correlato