--- trunk2/all2all.pl 2004/09/21 19:08:11 459 +++ trunk2/all2all.pl 2004/09/21 20:43:43 460 @@ -66,6 +66,7 @@ # tree structure { 'eval' => 'length("v251") == 2', 'key' => 'root:v251', 'val' => 'v900' }, { 'eval' => '"v251"', 'key' => 'code:v900', 'val' => 'v561^4:v251' }, + { 'eval' => '"v561^4" && "v562^4"', 'key' => 'code:v900', 'val' => 'v561^4:v562^4' }, ], ); @@ -209,98 +210,69 @@ # 2 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { shift }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{"a:".$_[2].":".$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, #style => 'display: none', },{ # 3 uži pojam code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, },{ # 4 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, },{ # 5 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, },{ # 6 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, },{ # 7 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, - have_children => sub { return $l->{$_[1]} }, + have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, },{ # 8 code_arr => sub { @{$_[0]} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(..:....):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, -# have_children => sub { return $l->{$_[1]} }, -# child_code => sub { return $_[1] }, +# have_children => sub { return $l->{"a:".$_[1].":".$_[0]} }, have_children => sub { 0 }, },{ # 9 - level which is never reached except explicitly code_arr => sub { @{$l->{$_[0]}} }, filter_code => sub { shift }, - lookup_v900 => sub { - my ($c,$p) = @_; - $p =~ s/^a:(.+:.+):.*$/$1/; - return "a:".$p.":".$c; - }, + lookup_v900 => sub { shift @{$l->{"code:".$_[0]}} }, lookup_term => sub { shift @{$l->{"d:".$_[0]}} }, lookup_mfn => sub { shift @{$l->{"900_mfn:".$_[0]}} }, have_children => sub { 0 }, - have_children_at_level => sub { defined($l->{$_[1]}) && return (9,$_[1]) }, + have_children_at_level => sub { defined($l->{"a:".$_[1].":".$_[0]}) && return (9,"a:".$_[1].":".$_[0]) }, },{ });