]> git.vpit.fr Git - perl/modules/LaTeX-TikZ.git/commitdiff
Globally store layer objects as weak references
authorVincent Pit <vince@profvince.com>
Wed, 21 Jul 2010 17:33:42 +0000 (19:33 +0200)
committerVincent Pit <vince@profvince.com>
Wed, 21 Jul 2010 17:33:42 +0000 (19:33 +0200)
Makefile.PL
lib/LaTeX/TikZ/Mod/Layer.pm

index 5625d466cc10e44196138ebfe0c130737b2f7bfc..442433f2e26684df9b654f91363682bb98323346 100644 (file)
@@ -18,8 +18,10 @@ my %PREREQ_PM = (
  'Math::Complex' => 0,
  'Math::Trig'    => 0,
  'Mouse'         => '0.63', # register_type_constraint
+ 'Scalar::Util'  => 0,
  'Scope::Guard'  => 0,
  'Sub::Name'     => 0,
+ 'Task::Weaken'  => 0,
  'constant'      => 0,
 );
 
index 6b3f73de0967e2e2e5149632370ac5832fb40b06..bfab947ddfbaa4e291eeab1a198a47ed4a688e2a 100644 (file)
@@ -15,7 +15,8 @@ Version 0.01
 
 our $VERSION = '0.01';
 
-use List::Util ();
+use Scalar::Util ();
+use List::Util   ();
 
 use LaTeX::TikZ::Mod::Formatted;
 
@@ -91,7 +92,9 @@ around 'new' => sub {
 sub BUILD {
  my ($self) = @_;
 
- $layers{$self->name} = $self;
+ my $name = $self->name;
+ $layers{$name} = $self;
+ Scalar::Util::weaken($layers{$name});
 }
 
 sub DEMOLISH {