in reply to What should be returned in scalar context?
The docs for Tie::Array::Iterable need some corrections, and you don't actually do the tieing ... but here is an example with it:if ($results->isa('XML::XPath::NodeSet')) { return wantarray ? $results->get_nodelist : $results; # return $results->get_nodelist; }
#!/usr/bin/perl -l use strict; use warnings; use Tie::Array::Iterable; sub foo { my @list = 0..9; return wantarray ? @list : Tie::Array::Iterable->new(@list); } # access as a list print for foo(); # or an iterator my $iter = foo()->from_start(); print ($iter->value),$iter->next until $iter->at_end;
jeffa
L-LL-L--L-LL-L--L-LL-L-- -R--R-RR-R--R-RR-R--R-RR B--B--B--B--B--B--B--B-- H---H---H---H---H---H--- (the triplet paradiddle with high-hat)
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Re: What should be returned in scalar context?
by tilly (Archbishop) on Dec 02, 2003 at 15:57 UTC | |
|
Re: What should be returned in scalar context?
by Abigail-II (Bishop) on Dec 02, 2003 at 16:45 UTC |