TITLE
    Hash::Diff::Dispatch - execute code depending on difference between
    hashes

DESCRIPTION
    Execute code based on the difference between the saved version of a hash
    and a new one

SYNOPSIS
     my $hash_watcher = Hash::Diff::Dispatch->new(

            {}, # Sets the starting hash
 
            # The events will be called using the order returned
            # by calling 'keys' on these values...
        
            'b' => \&bold,
            'i' => \&italic,

     );

     # Will call: bold('on', 5)
     $hash_watcher->update( { b => 5, a => 'la' } );

     # Will call: bold('changed', 6)
     $hash_watcher->update( { b => 6 } );

     # Will call: bold('changed', 0)
     $hash_watcher->update( { b => 0 } );

     # Will call: bold('off')
     $hash_watcher->update( {} );

METHODS
  new
    Accepts a starting hash-ref, and then a list of keys you want to watch,
    and the code to execute when they change. It will take a copy of the
    hash in the hash-ref you specify.

  update
    Accepts a hash-ref, which it'll take a copy of, and make it the 'saved'
    hash to check the next call to "update" again.

    If a key's value has changed, it'll execute the code specified when you
    created the object. If the key exists where it didn't before, it'll pass
    'on' as the first argument, and the new value as the second. If it's
    changed, 'changed' and the new value. If it's been deleted, it'll pass
    'off'.

AUTHOR
    Pete Sergeant - pete@clueball.com

LICENSE
    As Perl.

