Help for this page

Select Code to Download


  1. or download this
      package MyPackage;
      sub new {
    ...
    
      package main;
      my $a = MyPackage::->new(1);
    
  2. or download this
      package main;
      my $b = $a;
    
  3. or download this
      my $c = $a + $b;
    
  4. or download this
      package MyPackage;
      use overload q/+/ => \&add;
    ...
      sub add {
          $_[0]->new( $_[0]->{foo} + (ref($_[1]) ? $_[1]->{foo} : $_[1]) )
      }
    
  5. or download this
      package main;
      my $c = $a + $b;
    
  6. or download this
      $b++;
    
  7. or download this
      package MyPackage;
      use overload q/++/ => sub { $_[0]->{foo}*=2; shift };
    ...
      package main;
      $d = $c;
      $d++;
    
  8. or download this
      package MyPackage;
      use overload q/=/ => sub { $_[0]->new($_[0]->{foo}) };
    
  9. or download this
      package main;
      $d = $c;
    
  10. or download this
      $d++;