summaryrefslogtreecommitdiff
path: root/source4/build/pidl/parser.pm
diff options
context:
space:
mode:
Diffstat (limited to 'source4/build/pidl/parser.pm')
-rw-r--r--source4/build/pidl/parser.pm28
1 files changed, 5 insertions, 23 deletions
diff --git a/source4/build/pidl/parser.pm b/source4/build/pidl/parser.pm
index bc9eaa627f..51d561d4b2 100644
--- a/source4/build/pidl/parser.pm
+++ b/source4/build/pidl/parser.pm
@@ -13,10 +13,6 @@ use client;
my %needed;
my %structs;
-my $if_uuid;
-my $if_version;
-my $if_endpoints;
-
sub pidl($)
{
print OUT shift;
@@ -622,7 +618,7 @@ sub ParseElementPrintBuffer($$)
}
if (util::array_size($e)) {
- ParseArrayPrint($e, $var_prefix);
+ ParseArrayPrint($e, $var_prefix)
} elsif (my $switch = util::has_property($e, "switch_is")) {
ParseElementPrintSwitch($e, $var_prefix, $switch);
} else {
@@ -1340,7 +1336,7 @@ sub ParseFunctionPull($)
sub FunctionTable($)
{
my($interface) = shift;
- my($data) = $interface->{DATA};
+ my($data) = $interface->{INHERITED_DATA};
my $count = 0;
my $uname = uc $interface->{NAME};
@@ -1368,11 +1364,11 @@ sub FunctionTable($)
my $endpoints;
- if (! defined $if_endpoints) {
- $if_endpoints = $interface->{NAME};
+ if (! defined $interface->{PROPERTIES}->{endpoints}) {
+ $interface->{PROPERTIES}->{endpoints} = $interface->{NAME};
}
- my @e = split / /, $if_endpoints;
+ my @e = split / /, $interface->{PROPERTIES}->{endpoints};
my $endpoint_count = $#e + 1;
pidl "static const char * const $interface->{NAME}\_endpoint_strings[] = {\n\t";
@@ -1501,17 +1497,6 @@ sub BuildNeeded($)
}
#####################################################################
-# parse the interface definitions
-sub ModuleHeader($)
-{
- my($h) = shift;
-
- $if_uuid = $h->{PROPERTIES}->{uuid};
- $if_version = $h->{PROPERTIES}->{version};
- $if_endpoints = $h->{PROPERTIES}->{endpoints};
-}
-
-#####################################################################
# parse a parsed IDL structure back into an IDL file
sub Parse($$)
{
@@ -1523,9 +1508,6 @@ sub Parse($$)
pidl "/* parser auto-generated by pidl */\n\n";
pidl "#include \"includes.h\"\n\n";
foreach my $x (@{$idl}) {
- ($x->{TYPE} eq "MODULEHEADER") &&
- ModuleHeader($x);
-
if ($x->{TYPE} eq "INTERFACE") {
BuildNeeded($x);
ParseInterface($x);