N
Norman Ackroyd
Ok, so I'm working on a Perl proggy to convert Net.Data to JSP (gotta
love Perl.) I've got a Module that has a Class to store all relevant
information about a Net.Data user defined function that is read in. In
this class is a Hash of a Struct where the key is the variable name
and the Struct itself contains the variable type and value:
package ND2Parse::Function;
use Carp;
use Class::Struct;
struct Var => {
type => '$',
value => '$',
};
sub new
{
my $classname=shift;
my $functionname=shift;
my $self={
vars => {},
name => $functionname
};
bless($self,$classname);
return $self;
}
sub addvar
{
my $self=shift;
my $var=shift;
my $type=shift;
my $value=shift;
unless ($var)
{
carp "No var name passed in ->addvar(<var>,<type>,<value>)\n";
return 0;
}
${$self->{vars}}{$var}=Var->new();
${$self->{vars}}{$var}->type($type) if $type;
${$self->{vars}}{$var}->value($value) if $value;
return 1;
}
My question: Is there an easier/cleaner/more readable way to reference
and update the Struct other than what I'm doing:
${$self->{vars}}{$var}=Var->new();
${$self->{vars}}{$var}->type($type) if $type;
${$self->{vars}}{$var}->value($value) if $value;
Specifically, this portion seems rather unwieldy to me:
${$self->{vars}}{$var}
Any thoughts would be appreciated.
-Norm
love Perl.) I've got a Module that has a Class to store all relevant
information about a Net.Data user defined function that is read in. In
this class is a Hash of a Struct where the key is the variable name
and the Struct itself contains the variable type and value:
package ND2Parse::Function;
use Carp;
use Class::Struct;
struct Var => {
type => '$',
value => '$',
};
sub new
{
my $classname=shift;
my $functionname=shift;
my $self={
vars => {},
name => $functionname
};
bless($self,$classname);
return $self;
}
sub addvar
{
my $self=shift;
my $var=shift;
my $type=shift;
my $value=shift;
unless ($var)
{
carp "No var name passed in ->addvar(<var>,<type>,<value>)\n";
return 0;
}
${$self->{vars}}{$var}=Var->new();
${$self->{vars}}{$var}->type($type) if $type;
${$self->{vars}}{$var}->value($value) if $value;
return 1;
}
My question: Is there an easier/cleaner/more readable way to reference
and update the Struct other than what I'm doing:
${$self->{vars}}{$var}=Var->new();
${$self->{vars}}{$var}->type($type) if $type;
${$self->{vars}}{$var}->value($value) if $value;
Specifically, this portion seems rather unwieldy to me:
${$self->{vars}}{$var}
Any thoughts would be appreciated.
-Norm