i am new to perl modules (well, any perl more advanced than CGI business).
i have made a module that returns a hash reference (the hash is a hash of
a hash, populated by $outer{$inner} = { a=>b, c=>d }). when i use a sort
subroutine ({ $a->{'field'} <=> $b->{'field'}) on a hash in its module,
then use that subroutine on another hash in another module, the sort does
not work (use of uninitialized value in numeric comparison <=>). i am
guessing this has to do with $a and $b in the module the sort routine is
in...
basically, to be more detailed, i am creating and sorting one type of hash
in one module, and creating another type of hash in another module, and
sorting *that* hash using a the fields of a hash from the first module
that was sorted with the first modules's sort routine (phew!). eg, i
have module A and B, and hash %ha and %hb from A and B respectively.
i am sorting %ha with a sort routine from A, but called from inside B.
foreach $hav (sort A::sortfunc values %ha)
{
print $hb{$hav->{'a'}}->{'b'};
};
i am using my throughout the modules, but i am returning a reference, but
it still works when i return a reference to a my var from one module to
another. regardless, i can't get the sort to work.
thanks (i hope people can understand this messy situation...),
-chris grierson
[ Structural Informatics Group ]
[ Dept. of Biological Structure ]
[ University of Washington ]
[ 206.616.7356:office ]
[ 206.795.4998:cell ]
--
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]