Thread @_? (14 answers)
Opened by Mathias at 2006-05-29 21:17

bloonix
 2006-05-30 19:52
#66711 #66711
User since
2005-12-17
1615 Artikel
HausmeisterIn
[Homepage]
user image
[quote=pktm,30.05.2006, 17:12]Hm, wie ist das denn dann mit exportierten Methoden?
CGI.pm exportier z.B. bei use CGI qw/:standard/; soclhe Dinge wie header(), die dann auch ohne Objekt aufgerufen werden können (trotzdem ist es eine Klassenmethode von CGI.pm).[/quote]
Ein Blick in CGI.pm verät, das dann ein Objekt erzeugt wird... wenn ich das
so richtig verstehe.

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
sub header {
my($self,@p) = self_or_default(@_);
....
....
}

sub self_or_default {
return @_ if defined($_[0]) && (!ref($_[0])) &&($_[0] eq 'CGI');
unless (defined($_[0]) &&
(ref($_[0]) eq 'CGI' || UNIVERSAL::isa($_[0],'CGI')) # slightly optimized for common case
) {
$Q = $CGI::DefaultClass->new unless defined($Q);
unshift(@_,$Q);
}
return wantarray ? @_ : $Q;
}
What is a good module? That's hard to say.
What is good code? That's also hard to say.
One man's Thing of Beauty is another's man's Evil Hack.

View full thread @_?