Lines Matching +full:n +full:- +full:1
17 pod2usage(1) if $help;
18 pod2usage(-exitstatus => 0, -verbose => 2) if $man;
47 $is_comment = 1 if ($ln =~ s,/\*.*,,);
57 my $s = $1;
58 my $n = $1;
59 $n =~ tr/A-Z/a-z/;
60 $n =~ tr/_/-/;
62 $enum_symbols{$s} = "\\ :ref:`$s <$n>`\\ ";
70 my $s = $1;
71 my $n = $1;
72 $n =~ tr/A-Z/a-z/;
74 $ioctls{$s} = "\\ :ref:`$s <$n>`\\ ";
79 my $s = $1;
80 my $n = $1;
81 $n =~ tr/A-Z/a-z/;
82 $n =~ tr/_/-/;
84 $defines{$s} = "\\ :ref:`$s <$n>`\\ ";
90 my $n = $3;
92 $typedefs{$n} = "\\ :c:type:`$n <$s>`\\ ";
99 my $s = $1;
103 $is_enum = $1;
111 my $s = $1;
120 # Handle multi-line typedefs
153 delete $ioctls{$1} if (exists($ioctls{$1}));
157 delete $defines{$1} if (exists($defines{$1}));
161 delete $typedefs{$1} if (exists($typedefs{$1}));
165 delete $enums{$1} if (exists($enums{$1}));
169 delete $structs{$1} if (exists($structs{$1}));
173 delete $enum_symbols{$1} if (exists($enum_symbols{$1}));
181 $type = $1;
189 $reftype = ":c:$1";
193 $new = $1;
229 print Data::Dumper->Dump([\%ioctls], [qw(*ioctls)]) if (%ioctls);
230 print Data::Dumper->Dump([\%typedefs], [qw(*typedefs)]) if (%typedefs);
231 print Data::Dumper->Dump([\%enums], [qw(*enums)]) if (%enums);
232 print Data::Dumper->Dump([\%structs], [qw(*structs)]) if (%structs);
233 print Data::Dumper->Dump([\%defines], [qw(*defines)]) if (%defines);
234 print Data::Dumper->Dump([\%enum_symbols], [qw(*enum_symbols)]) if (%enum_symbols);
242 $data =~ s/\n/\n /g;
243 $data =~ s/\n\s+$/\n/g;
244 $data =~ s/\n\s+\n/\n\n/g;
249 $data =~ s,([\_\`\*\<\>\&\\\\:\/\|\%\$\#\{\}\~\^]),\\$1,g;
257 my $start_delim = "[ \n\t\(\=\*\@]";
263 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
265 print "$r -> $s\n" if ($debug);
267 $data =~ s/($start_delim)($r)$end_delim/$1$s$3/g;
273 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
275 print "$r -> $s\n" if ($debug);
277 $data =~ s/($start_delim)($r)$end_delim/$1$s$3/g;
283 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
285 print "$r -> $s\n" if ($debug);
287 $data =~ s/($start_delim)($r)$end_delim/$1$s$3/g;
293 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
295 print "$r -> $s\n" if ($debug);
303 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
305 print "$r -> $s\n" if ($debug);
313 $r =~ s,([\_\`\*\<\>\&\\\\:\/]),\\\\$1,g;
315 print "$r -> $s\n" if ($debug);
316 $data =~ s/($start_delim)($r)$end_delim/$1$s$3/g;
319 $data =~ s/\\ ([\n\s])/\1/g;
329 print OUT ".. -*- coding: utf-8; mode: rst -*-\n\n";
330 print OUT "$title\n";
332 print OUT "\n\n.. parsed-literal::\n\n";
340 parse_headers.pl - parse a C file, in order to identify functions, structs,
341 enums and defines and create cross-references to a Sphinx book.
347 Where <options> can be: --debug, --help or --usage.
353 =item B<--debug>
357 =item B<--usage>
361 =item B<--help>
370 included via ..parsed-literal block with cross-references for the
373 be pointed to a non-default reference.
378 enums and enum symbols and create cross-references for all of them.
385 Please read Documentation/doc-guide/parse-headers.rst at the Kernel's