+ my @res;
+
+ $op = $op->first;
+ return undef, 0 if null $op;
+
+ my ($r1, $l1) = $self->inspect($op);
+ return $r1, $l1 if defined $r1 and zero $l1;
+ my $c = count $l1;
+
+ $op = $op->sibling;
+ my ($r2, $l2) = $self->inspect($op);
+
+ $op = $op->sibling;
+ my ($r3, $l3);
+ if (null $op) {
+ # If the logop has no else branch, it can also return the *scalar* result of
+ # the conditional
+ $l3 = { 1 => 1 };
+ } else {
+ ($r3, $l3) = $self->inspect($op);
+ }