Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Re^2: Perl semi-object without a constructor

by Wiggins (Friar)
on Feb 20, 2013 at 20:14 UTC ( #1019841=note: print w/ replies, xml ) Need Help??


in reply to Re: Perl semi-object without a constructor
in thread Perl semi-object without a constructor

I went back and looked at all the subroutines.
2 have $pkg as arg0 (event_loop() & new_server())
7 have $conn as arg0
3 don't take args
1 starts with the line:

shift unless ref($_[0]); # shift if first arg is package name

So maybe the entire package is actually a class.

With 1 dodgy routine:

sub _new_client { my $sock = $main_socket->accept(); my $conn = bless { 'sock' => $sock, 'state' => 'connected' }, $g_pkg; #< different CLASSNAME my $rcvd_notification_proc = &$g_login_proc ($conn, $sock->peerhost(), $sock->peerport()); if ($rcvd_notification_proc) { $conn->{rcvd_notification_proc} = $rcvd_notification_proc; my $callback = sub {_rcv($conn,0)}; set_event_handler ($sock, "read" => $callback); } else { # Login failed $conn->disconnect(); } }

It is always better to have seen your target for yourself, rather than depend upon someone else's description.


Comment on Re^2: Perl semi-object without a constructor
Select or Download Code
Re^3: Perl semi-object without a constructor
by dsheroh (Parson) on Feb 21, 2013 at 09:43 UTC
    Common Perl convention is that sub/method names beginning with an underscore are to be treated as private. The reason that sub _new_client is structured differently than the other subs in the package is because it's meant for internal use only and is not a part of the public interface.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1019841]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others studying the Monastery: (2)
As of 2014-11-29 08:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My preferred Perl binaries come from:














    Results (204 votes), past polls