mirror of
https://github.com/samba-team/samba.git
synced 2024-12-22 13:34:15 +03:00
commit idl.pm now, as many build farm machines don't have 'yapp'
(This used to be commit 2b1300386d
)
This commit is contained in:
parent
58714e6bda
commit
2773e54c98
@ -1,2 +1 @@
|
||||
*.pidl
|
||||
idl.pm
|
||||
|
1986
source4/build/pidl/idl.pm
Normal file
1986
source4/build/pidl/idl.pm
Normal file
File diff suppressed because it is too large
Load Diff
@ -191,14 +191,14 @@ array_len:
|
||||
|
||||
property_list:
|
||||
#empty
|
||||
| property_list '[' properties ']' { util::FlattenArray([$_[1],$_[3]]); }
|
||||
| property_list '[' properties ']' { util::FlattenHash([$_[1],$_[3]]); }
|
||||
;
|
||||
|
||||
properties: property { [ $_[1] ] }
|
||||
| properties ',' property { push(@{$_[1]}, $_[3]); $_[1] }
|
||||
properties: property { $_[1] }
|
||||
| properties ',' property { util::FlattenHash([$_[1], $_[3]]); }
|
||||
;
|
||||
|
||||
property: identifier
|
||||
property: identifier {{ "$_[1]" => "1" }}
|
||||
| identifier '(' anytext ')' {{ "$_[1]" => "$_[3]" }}
|
||||
;
|
||||
|
||||
|
@ -152,23 +152,7 @@ sub has_property($$)
|
||||
return undef;
|
||||
}
|
||||
|
||||
my($props) = $e->{PROPERTIES};
|
||||
|
||||
foreach my $d (@{$props}) {
|
||||
if (ref($d) ne "HASH") {
|
||||
if ($d eq $p) {
|
||||
return 1;
|
||||
}
|
||||
} else {
|
||||
foreach my $k (keys %{$d}) {
|
||||
if ($k eq $p) {
|
||||
return $d->{$k};
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return undef;
|
||||
return $e->{PROPERTIES}->{$p};
|
||||
}
|
||||
|
||||
|
||||
@ -176,20 +160,14 @@ sub is_scalar_type($)
|
||||
{
|
||||
my($type) = shift;
|
||||
|
||||
return 1, if ($type eq "uint32");
|
||||
return 1, if ($type eq "long");
|
||||
return 1, if ($type eq "short");
|
||||
return 1, if ($type eq "char");
|
||||
return 1, if ($type eq "uint8");
|
||||
return 1, if ($type eq "uint16");
|
||||
return 1, if ($type eq "NTTIME");
|
||||
return 1, if ($type eq "time_t");
|
||||
return 1, if ($type eq "error_status_t");
|
||||
return 1, if ($type eq "boolean32");
|
||||
return 1, if ($type eq "unsigned32");
|
||||
return 1, if ($type eq "HYPER_T");
|
||||
return 1, if ($type eq "wchar_t");
|
||||
return 1, if ($type eq "DATA_BLOB");
|
||||
if ($type =~ /uint\d+/) {
|
||||
return 1;
|
||||
}
|
||||
if ($type =~ /char|short|long|NTTIME|
|
||||
time_t|error_status_t|boolean32|unsigned32|
|
||||
HYPER_T|wchar_t|DATA_BLOB/x) {
|
||||
return 1;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user