Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: Build tree data structure from DB (flat) data; function golf

by imp (Priest)
on Sep 02, 2006 at 05:33 UTC ( #570858=note: print w/replies, xml ) Need Help??

in reply to Build tree data structure from DB (flat) data; function golf

I like the closure approach suggested by stvn. It comes with a small performance penalty because of all the function calls (7-20% depending on the dataset and spread), but it makes the code much easier to read/maintain.

On a related note - it would be good to add some documentation that describes your strategy. It isn't immediately apparent, and I had to re-read the code a few times before it was clear.

Found one problem: the following line should test whether $last_key is defined, to avoid problems when your data contains an empty string or '0'.

if ( $last_key and ( $last_key ne $_->{ $key_name } ) ) {

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://570858]
vrk gets a cup of tea to wash down the cookies.

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (9)
As of 2017-04-26 13:39 GMT
Find Nodes?
    Voting Booth?
    I'm a fool:

    Results (479 votes). Check out past polls.