Lines Matching refs:foo
15 my $foo;
17 ok( !Internals::SvREADONLY $foo );
18 $foo = 3;
19 is($foo, 3);
21 ok( Internals::SvREADONLY $foo, 1 );
22 ok( Internals::SvREADONLY $foo );
23 eval { $foo = 'foo'; };
25 eval { undef($foo); };
27 is($foo, 3);
29 ok( !Internals::SvREADONLY $foo, 0 );
30 ok( !Internals::SvREADONLY $foo );
31 $foo = 'foo';
32 is($foo, 'foo');
35 my @foo;
37 ok( !Internals::SvREADONLY @foo );
38 @foo = (1..3);
39 is(scalar(@foo), 3);
40 is($foo[2], 3);
42 ok( Internals::SvREADONLY @foo, 1 );
43 ok( Internals::SvREADONLY @foo );
44 eval { undef(@foo); };
46 eval { delete($foo[2]); };
48 eval { shift(@foo); };
50 eval { push(@foo, 'bork'); };
52 eval { @foo = qw/foo bar/; };
55 ok( !Internals::SvREADONLY @foo, 0 );
56 ok( !Internals::SvREADONLY @foo );
57 eval { @foo = qw/foo bar/; };
58 is(scalar(@foo), 2);
59 is($foo[1], 'bar');
63 ok( !Internals::SvREADONLY $foo[2] );
64 $foo[2] = 'baz';
65 is($foo[2], 'baz');
67 ok( Internals::SvREADONLY $foo[2], 1 );
68 ok( Internals::SvREADONLY $foo[2] );
70 $foo[0] = 99;
71 is($foo[0], 99, 'Rest of array still modifiable');
73 shift(@foo);
74 ok( Internals::SvREADONLY $foo[1] );
75 eval { $foo[1] = 'bork'; };
77 is($foo[1], 'baz');
79 ok( !Internals::SvREADONLY $foo[2] );
80 $foo[2] = 'qux';
81 is($foo[2], 'qux');
83 unshift(@foo, 'foo');
84 ok( !Internals::SvREADONLY $foo[1] );
85 ok( Internals::SvREADONLY $foo[2] );
87 eval { $foo[2] = 86; };
89 eval { undef($foo[2]); };
93 eval { delete($foo[2]); };
97 ok( !Internals::SvREADONLY $foo[2], 0 );
98 ok( !Internals::SvREADONLY $foo[2] );
99 $foo[2] = 'xyzzy';
100 is($foo[2], 'xyzzy');
103 my %foo;
105 ok( !Internals::SvREADONLY %foo );
106 %foo = ('foo' => 1, 2 => 'bar');
107 is(scalar(keys(%foo)), 2);
108 is($foo{'foo'}, 1);
110 ok( Internals::SvREADONLY %foo, 1 );
111 ok( Internals::SvREADONLY %foo );
112 eval { undef(%foo); };
116 eval { %foo = ('ping' => 'pong'); };
119 eval { $foo{'baz'} = 123; };
123 $foo{2} = 'qux';
124 is($foo{2}, 'qux', 'Can modify elements in a read-only hash');
125 my $qux = delete($foo{2});
126 ok(! exists($foo{2}), 'Can delete keys from a read-only hash');
128 $foo{2} = 2;
129 is($foo{2}, 2, 'Can add back deleted keys in a read-only hash');
131 ok( !Internals::SvREADONLY %foo, 0 );
132 ok( !Internals::SvREADONLY %foo );
136 ok( !Internals::SvREADONLY $foo{foo} );
137 $foo{'foo'} = 'bar';
138 is($foo{'foo'}, 'bar');
140 ok( Internals::SvREADONLY $foo{foo}, 1 );
141 ok( Internals::SvREADONLY $foo{foo} );
142 eval { $foo{'foo'} = 88; };
144 eval { undef($foo{'foo'}); };
146 my $bar = delete($foo{'foo'});
147 ok(! exists($foo{'foo'}), 'Can delete a read-only hash value');
150 ok( !Internals::SvREADONLY $foo{foo}, 0 );
151 ok( !Internals::SvREADONLY $foo{foo} );
153 is( Internals::SvREFCNT($foo), 1 );
155 my $bar = \$foo;
156 is( Internals::SvREFCNT($foo), 2 );
159 is( Internals::SvREFCNT($foo), 1 );
161 is( Internals::SvREFCNT(@foo), 1 );
162 is( Internals::SvREFCNT($foo[2]), 1 );
163 is( Internals::SvREFCNT(%foo), 1 );
164 is( Internals::SvREFCNT($foo{foo}), 1 );
166 is( Internals::SvREFCNT($foo, 2), 2, "update ref count");
167 is( Internals::SvREFCNT($foo), 2, "check we got the stored value");
172 is( Internals::SvREFCNT($foo, $big_count), $big_count,
174 is( Internals::SvREFCNT($foo), $big_count, "reference count unsigned");
177 my @arr = Internals::SvREFCNT($foo, 1 );
185 $foo = \"perl";
186 eval { &Internals::SvREFCNT($foo, 0..1);};
188 eval { &Internals::SvREFCNT($foo, 0..3);};