Author: metze
Date: 2007-08-16 10:54:11 +0000 (Thu, 16 Aug 2007)
New Revision: 24484

WebSVN: 
http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=24484

Log:
pass down $ndr tree instead of the $pidl tree to Samba4/Header.pm

metze
Modified:
   branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba4/Header.pm
   branches/SAMBA_4_0/source/pidl/pidl


Changeset:
Modified: branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba4/Header.pm
===================================================================
--- branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba4/Header.pm      
2007-08-16 10:40:04 UTC (rev 24483)
+++ branches/SAMBA_4_0/source/pidl/lib/Parse/Pidl/Samba4/Header.pm      
2007-08-16 10:54:11 UTC (rev 24484)
@@ -351,17 +351,16 @@
        pidl "#ifndef _HEADER_$interface->{NAME}\n";
        pidl "#define _HEADER_$interface->{NAME}\n\n";
 
-       foreach my $d (@{$interface->{DATA}}) {
-               next if ($d->{TYPE} ne "CONST");
+       foreach my $d (@{$interface->{CONSTS}}) {
                HeaderConst($d);
        }
 
-       foreach my $d (@{$interface->{DATA}}) {
-               HeaderTypedef($d) if ($d->{TYPE} eq "TYPEDEF");
-               HeaderStruct($d, $d->{NAME}) if ($d->{TYPE} eq "STRUCT");
-               HeaderUnion($d, $d->{NAME}) if ($d->{TYPE} eq "UNION");
-               HeaderEnum($d, $d->{NAME}) if ($d->{TYPE} eq "ENUM");
-               HeaderBitmap($d, $d->{NAME}) if ($d->{TYPE} eq "BITMAP");
+       foreach my $d (@{$interface->{TYPES}}) {
+               HeaderTypedef($d->{ORIGINAL}) if ($d->{TYPE} eq "TYPEDEF");
+               HeaderStruct($d->{ORIGINAL}, $d->{NAME}) if ($d->{TYPE} eq 
"STRUCT");
+               HeaderUnion($d->{ORIGINAL}, $d->{NAME}) if ($d->{TYPE} eq 
"UNION");
+               HeaderEnum($d->{ORIGINAL}, $d->{NAME}) if ($d->{TYPE} eq 
"ENUM");
+               HeaderBitmap($d->{ORIGINAL}, $d->{NAME}) if ($d->{TYPE} eq 
"BITMAP");
                pidl ";\n\n" if ($d->{TYPE} eq "BITMAP" or 
                                 $d->{TYPE} eq "STRUCT" or 
                                 $d->{TYPE} eq "TYPEDEF" or 
@@ -369,10 +368,8 @@
                                 $d->{TYPE} eq "ENUM");
        }
 
-       foreach my $d (@{$interface->{DATA}}) {
-               next if ($d->{TYPE} ne "FUNCTION");
-
-               HeaderFunction($d);
+       foreach my $d (@{$interface->{FUNCTIONS}}) {
+               HeaderFunction($d->{ORIGINAL});
        }
 
        pidl "#endif /* _HEADER_$interface->{NAME} */\n";
@@ -382,7 +379,7 @@
 # parse a parsed IDL into a C header
 sub Parse($)
 {
-       my($idl) = shift;
+       my($ndr) = shift;
        $tab_depth = 0;
 
        $res = "";
@@ -394,7 +391,7 @@
        pidl "#include <stdint.h>\n";
        pidl "\n";
 
-       foreach (@{$idl}) {
+       foreach (@{$ndr}) {
                ($_->{TYPE} eq "INTERFACE") && HeaderInterface($_);
                ($_->{TYPE} eq "IMPORT") && HeaderImport(@{$_->{PATHS}});
                ($_->{TYPE} eq "INCLUDE") && HeaderInclude(@{$_->{PATHS}});

Modified: branches/SAMBA_4_0/source/pidl/pidl
===================================================================
--- branches/SAMBA_4_0/source/pidl/pidl 2007-08-16 10:40:04 UTC (rev 24483)
+++ branches/SAMBA_4_0/source/pidl/pidl 2007-08-16 10:54:11 UTC (rev 24484)
@@ -619,7 +619,7 @@
        my $gen_header = ($opt_header or "$outputdir/$basename.h");
        if (defined($opt_header)) {
                require Parse::Pidl::Samba4::Header;
-               FileSave($gen_header, 
Parse::Pidl::Samba4::Header::Parse($pidl));
+               FileSave($gen_header, Parse::Pidl::Samba4::Header::Parse($ndr));
        }
 
        my $h_filename = "$outputdir/ndr_$basename.h";

Reply via email to