r5494: Some more code simplification, some additional comments.
[bbaumbach/samba-autobuild/.git] / source4 / build / pidl / util.pm
index a662ed005ef8f6435baacd085d2b7a04cd76ecb8..f216f75572579788f83f7e61feab8a0adb9848ad 100644 (file)
@@ -246,4 +246,23 @@ sub make_str($)
        return "\"" . $str . "\"";
 }
 
+###################################
+# find a sibling var in a structure
+sub find_sibling($$)
+{
+       my($e) = shift;
+       my($name) = shift;
+       my($fn) = $e->{PARENT};
+
+       if ($name =~ /\*(.*)/) {
+               $name = $1;
+       }
+
+       for my $e2 (@{$fn->{ELEMENTS}}) {
+               return $e2 if ($e2->{NAME} eq $name);
+       }
+
+       die "invalid sibling '$name'";
+}
+
 1;