1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118
|
package Vegetable ;
package Potatoe ;
use AutoLoader ;
@ISA = ("Vegetable");
sub AUTOLOAD{} ;
package SuperObject ;
@ISA = ("Potatoe");
package SuperObjectWithAutoload ;
@ISA = ("Potatoe");
sub AUTOLOAD{} ;
package TiedHash;
use Tie::Hash;
@ISA = (Tie::StdHash);
package TiedArray;
use Tie::Array;
@ISA = ('Tie::StdArray');
package TiedScalar;
use Tie::Scalar;
@ISA = (Tie::StdScalar);
package main ;
$s = {
'STDIN' => \*STDIN,
'REGEX' => qr/^this|that/,
'RS' => \4,
'A' => {
'a' => {},
'code1' => sub { "DUMMY" },
'b' => {
'a' => 0,
'b' => 1,
'c' => {
'a' => 1,
'b' => 1,
'c' => 1,
}
},
'b2' => {
'a' => 1,
'b' => 1,
'c' => 1,
}
},
'C' => {
'b' => {
'a' => {
'c' => 42,
'a' => {},
'b' => sub { "DUMMY" },
'empty' => undef,
'z_array' => [1]
}
}
},
'ARRAY' => [
'elment_1',
'element_2',
'element_3',
[1, 2],
{a => 1, b => 2}
],
'STRING_WITH_EMBEDED_NEW_LINE' => "line1\nline2\r\nline3\nlong line4 lkjdfljkdjfklsdfkldjflkjdkfjksldfjldjfklsdjfkljdklfjksljfkldsjfkldsjklfjlfjlsdjflsjfklsjdfldjkslfjklsdfj\nline5",
};
my $scalar = "hi" ;
$s->{SCALAR} = $scalar ;
$s->{SCALAR_REF} = \$scalar ;
$s->{SCALAR_REF2} = \$scalar ;
${$s->{'A'}{'code3'}} = $s->{'A'}{'code1'};
$s->{'A'}{'code2'} = $s->{'A'}{'code1'};
$s->{'CopyOfARRAY'} = $s->{'ARRAY'};
$s->{'C1'} = \($s->{'C2'});
$s->{'C2'} = \($s->{'C1'});
$s->{za} = '';
$object = bless {A =>[], B => 123}, 'SuperObject' ;
$s->{object} = $object ;
$object_with_autoload = bless {}, 'SuperObjectWithAutoload' ;
$s->{object_with_autoload} = $object_with_autoload ;
tie my %tied_hash, "TiedHash" ;
$tied_hash{'x'}++ ;
$s->{tied_hash} = \%tied_hash ;
tie my @tied_array, "TiedArray" ;
$tied_array[0]++ ;
$s->{tied_array} = \@tied_array ;
tie my $tied_scalar, "TiedScalar" ;
$tied_scalar++ ;
$s->{tied_scalar} = $tied_scalar ;
my %tied_hash_object ;
tie my %tied_hash_object, "TiedHash" ;
%tied_hash_object = (m1 => 1) ;
bless \%tied_hash_object, 'SuperObject' ;
$s->{tied_hash_object} = \%tied_hash_object ;
tie my @tied_array_object, "TiedArray" ;
@tied_array_object = (0) ;
bless \@tied_array_object, 'SuperObject' ;
$s->{tied_array_object} = \@tied_array_object;
|