Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re^5: An iterator for (not "iterating") a recursive data structure.

by Eily (Monsignor)
on Jul 09, 2019 at 09:29 UTC ( [id://11102589]=note: print w/replies, xml ) Need Help??


in reply to Re^4: An iterator for (not "iterating") a recursive data structure.
in thread An iterator for (not "iterating") a recursive data structure.

... OK, I'll have to seriously train myself to use that idiom.

  • Comment on Re^5: An iterator for (not "iterating") a recursive data structure.

Replies are listed 'Best First'.
Re^6: An iterator for (not "iterating") a recursive data structure.
by LanX (Saint) on Jul 09, 2019 at 10:37 UTC
    To be fair, the semi predicate problem will still show up if you want an empty array to be a valid return value.

    But there are ways to fix it:

    • return an array ref hence a scalar
    • throw an exception via die and catch it with eval block (or better Try::Tiny )
    • do a goto to an external label named FINISHED or similar (totally undervalued option)

    Cheers Rolf
    (addicted to the Perl Programming Language :)
    Wikisyntax for the Monastery FootballPerl is like chess, only without the dice

      Are you you talking about iterators that return a possibly empty list of items? Just have it return an array reference!

        Lol ...

        See first bullet point.

        Cheers Rolf
        (addicted to the Perl Programming Language :)
        Wikisyntax for the Monastery FootballPerl is like chess, only without the dice

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://11102589]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (4)
As of 2024-04-18 21:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found