Devel-Cycle version 1.00
========================

This module can be used to find memory cycles in objects and other
references.  Here is the synopsis:

 #!/usr/bin/perl
 use Devel::Cycle;

 # create an object that has four cycles
 my $test = {fred   => [qw(a b c d e)],
           ethel  => [qw(1 2 3 4 5)],
           george => {martha => 23,
                      agnes  => 19}
          };
 # cycle 1
 $test->{george}{phyllis} = $test;
 # cycle 2
 $test->{fred}[3]      = $test->{george};
 # cycles 3 and 4
 $test->{george}{mary} = $test->{fred};
 find_cycle($test);
 exit 0;

 # output of the script:

Cycle (1):
       HASH(0x8171d30)->{george} => HASH(0x8171d00)
       HASH(0x8171d00)->{phyllis} => HASH(0x8171d30)

Cycle (2):
       HASH(0x8171d30)->{george} => HASH(0x8171d00)
       HASH(0x8171d00)->{mary} => ARRAY(0x814be60)
       ARRAY(0x814be60)->[3] => HASH(0x8171d00)

Cycle (3):
       HASH(0x8171d30)->{fred} => ARRAY(0x814be60)
       ARRAY(0x814be60)->[3] => HASH(0x8171d00)
       HASH(0x8171d00)->{phyllis} => HASH(0x8171d30)

Cycle (4):
       HASH(0x8171d30)->{fred} => ARRAY(0x814be60)
       ARRAY(0x814be60)->[3] => HASH(0x8171d00)
       HASH(0x8171d00)->{mary} => ARRAY(0x814be60)


INSTALLATION

To install this module type the following:

  perl Makefile.PL
  make
  make test
  make install

COPYRIGHT AND LICENCE

Put the correct copyright and licence information here.

Copyright (C) 2003 by Lincoln Stein

This library is free software; you can redistribute it and/or modify
it under the same terms as Perl itself, either Perl version 5.8.2 or,
at your option, any later version of Perl 5 you may have available.