aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/kernel-doc13
1 files changed, 11 insertions, 2 deletions
diff --git a/scripts/kernel-doc b/scripts/kernel-doc
index 8aaf74e64183..2f45fd2969d0 100755
--- a/scripts/kernel-doc
+++ b/scripts/kernel-doc
@@ -117,6 +117,8 @@ use strict;
117# struct my_struct { 117# struct my_struct {
118# int a; 118# int a;
119# int b; 119# int b;
120# /* private: */
121# int c;
120# }; 122# };
121# 123#
122# All descriptions can be multiline, except the short function description. 124# All descriptions can be multiline, except the short function description.
@@ -1304,6 +1306,12 @@ sub dump_struct($$) {
1304 # ignore embedded structs or unions 1306 # ignore embedded structs or unions
1305 $members =~ s/{.*?}//g; 1307 $members =~ s/{.*?}//g;
1306 1308
1309 # ignore members marked private:
1310 $members =~ s/\/\*.*?private:.*?public:.*?\*\///gos;
1311 $members =~ s/\/\*.*?private:.*//gos;
1312 # strip comments:
1313 $members =~ s/\/\*.*?\*\///gos;
1314
1307 create_parameterlist($members, ';', $file); 1315 create_parameterlist($members, ';', $file);
1308 1316
1309 output_declaration($declaration_name, 1317 output_declaration($declaration_name,
@@ -1329,6 +1337,7 @@ sub dump_enum($$) {
1329 my $x = shift; 1337 my $x = shift;
1330 my $file = shift; 1338 my $file = shift;
1331 1339
1340 $x =~ s@/\*.*?\*/@@gos; # strip comments.
1332 if ($x =~ /enum\s+(\w+)\s*{(.*)}/) { 1341 if ($x =~ /enum\s+(\w+)\s*{(.*)}/) {
1333 $declaration_name = $1; 1342 $declaration_name = $1;
1334 my $members = $2; 1343 my $members = $2;
@@ -1365,6 +1374,7 @@ sub dump_typedef($$) {
1365 my $x = shift; 1374 my $x = shift;
1366 my $file = shift; 1375 my $file = shift;
1367 1376
1377 $x =~ s@/\*.*?\*/@@gos; # strip comments.
1368 while (($x =~ /\(*.\)\s*;$/) || ($x =~ /\[*.\]\s*;$/)) { 1378 while (($x =~ /\(*.\)\s*;$/) || ($x =~ /\[*.\]\s*;$/)) {
1369 $x =~ s/\(*.\)\s*;$/;/; 1379 $x =~ s/\(*.\)\s*;$/;/;
1370 $x =~ s/\[*.\]\s*;$/;/; 1380 $x =~ s/\[*.\]\s*;$/;/;
@@ -1420,7 +1430,7 @@ sub create_parameterlist($$$) {
1420 $type = $arg; 1430 $type = $arg;
1421 $type =~ s/([^\(]+\(\*)$param/$1/; 1431 $type =~ s/([^\(]+\(\*)$param/$1/;
1422 push_parameter($param, $type, $file); 1432 push_parameter($param, $type, $file);
1423 } else { 1433 } elsif ($arg) {
1424 $arg =~ s/\s*:\s*/:/g; 1434 $arg =~ s/\s*:\s*/:/g;
1425 $arg =~ s/\s*\[/\[/g; 1435 $arg =~ s/\s*\[/\[/g;
1426 1436
@@ -1628,7 +1638,6 @@ sub process_state3_type($$) {
1628 my $x = shift; 1638 my $x = shift;
1629 my $file = shift; 1639 my $file = shift;
1630 1640
1631 $x =~ s@/\*.*?\*/@@gos; # strip comments.
1632 $x =~ s@[\r\n]+@ @gos; # strip newlines/cr's. 1641 $x =~ s@[\r\n]+@ @gos; # strip newlines/cr's.
1633 $x =~ s@^\s+@@gos; # strip leading spaces 1642 $x =~ s@^\s+@@gos; # strip leading spaces
1634 $x =~ s@\s+$@@gos; # strip trailing spaces 1643 $x =~ s@\s+$@@gos; # strip trailing spaces