in reply to Perl "new" command
What does the following code do?
This StatView::Script->new( ... ); calls the new method of the class.
The bit inside the parens:
{ name => 'stv_copy_key', version => $VERSION, opt_spec => [qw( host=s list_pollers all_pollers )], db_connection => [qw/ poller /], handler => sub { StatView::CopySSHKey::run (@_) }, }
Constructs an anonymous hash which is passed into the new method.
It is equivalent to doing
my %hash = ( name => 'stv_copy_key', version => $VERSION, opt_spec => [qw( host=s list_pollers all_pollers )], db_connection => [qw/ poller /], handler => sub { StatView::CopySSHKey::run (@_) }, ); StatView::Script->new( \%hash );
Are the keys mentioned predefined?
Presumably you mean the hash keys? If so, one assumes that they have some meaning to the class constructor, otherwise they would either raise an error or be ignored.
|
|---|