Lines Matching refs:out

113     my $out = '';
115 $out = "{\n package $class;\n use Carp;\n sub new {\n";
116 $out .= " my (\$class, \%init) = \@_;\n";
117 $out .= " \$class = __PACKAGE__ unless \@_;\n";
124 $out .= " my(\$r) = {};\n";
128 $out .= " my(\$r) = [];\n";
131 $out .= " bless \$r, \$class;\n\n";
151 $out .= " croak 'Initializer for $name must be array reference'\n";
152 $out .= " if defined(\$init{'$name'}) && ref(\$init{'$name'}) ne 'ARRAY';\n";
153 $out .= " \$r->$name( $init [] );$cmt\n";
157 $out .= " croak 'Initializer for $name must be hash reference'\n";
158 $out .= " if defined(\$init{'$name'}) && ref(\$init{'$name'}) ne 'HASH';\n";
159 $out .= " \$r->$name( $init {} );$cmt\n";
163 $out .= " \$r->$name( $init undef );$cmt\n";
166 $out .= " if (defined(\$init{'$name'})) {\n";
167 $out .= " if (ref \$init{'$name'} eq 'HASH')\n";
168 $out .= " { \$r->$name( $type->new(\%{\$init{'$name'}}) ) } $cmt\n";
169 $out .= " elsif (UNIVERSAL::isa(\$init{'$name'}, '$type'))\n";
170 $out .= " { \$r->$name( \$init{'$name'} ) } $cmt\n";
171 … $out .= " else { croak 'Initializer for $name must be hash or $type reference' }\n";
172 $out .= " }\n";
182 $out .= "\n \$r;\n}\n";
199 $out .= " sub $name {$cmt\n my \$r = shift;\n";
208 $out .= " my \$i;\n";
209 $out .= " \@_ ? (\$i = shift) : return \$r->$elem;\n";
210 $out .= " if (ref(\$i) eq 'ARRAY' && !\@_) { \$r->$elem = \$i; return \$r }\n";
214 $out .= " my \$i;\n";
215 $out .= " \@_ ? (\$i = shift) : return \$r->$elem;\n";
216 $out .= " if (ref(\$i) eq 'HASH' && !\@_) { \$r->$elem = \$i; return \$r }\n";
220 …$out .= " croak '$name argument is wrong class' if \@_ && ! UNIVERSAL::isa(\$_[0], '$classes{$n…
222 $out .= " croak 'Too many args to $name' if \@_ > 1;\n";
223 $out .= " \@_ ? ($pre\$r->$elem$sel = shift$pst) : $pre\$r->$elem$sel$pst;\n";
224 $out .= " }\n";
227 $out .= "}\n1;\n";
229 print $out if $print;
230 my $result = eval $out;