First, some code to give an example of the Qs I have:
package Example;
use Moose;
use Net::LDAP;
# Options related to SSH
has [ 'host', 'user'] is => 'rw', isa => 'Str', required => 1;
has 'ldap', is => 'rw';
has 'error', is => 'rw', isa => 'Str';
# Create the SSH expect object
sub get_user {
my $self = shift;
my $user = $self->user;
my $host = $self->host;
$self->ldap(
Net::LDAP->new(
$self->host
)
);
my $mesg = $self->ldap->bind;
$mesg = $self->ldap->search( filter => "(uid=$$self-user)" );
...
}
The code above is just there to clarify my questions...
- Is there a Moose way to define named subroutine parameters? Doing something like this:
sub foo {
my $arg = shift;
if (exists $arg->{'fruit'} ) {
....
}
}
foo( fruit => 'banana' );
There's a new Moose way of creating constructors, and defining what paramaters (arguments, options) those accept. Is there a Moose way to define subroutine parameters? The old way still works, but I'm just wondering.
- Here's how I was creating an LDAP connection before:
my $ldap = Net::LDAP->new( $host );
my $self->{ldap} = $ldap;
This still works, but I am wondering if there's a Moose way to do this. I've defined the attributes for my class... how do I deal with attributes of the object (i.e., self) that are objects from a different module?
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|