| - Documentation extraction program for chew. |
| - Copyright (C) 1990-2024 Free Software Foundation, Inc. |
| - This file is part of BFD, the Binary File Descriptor library. |
| |
| - This program is free software; you can redistribute it and/or modify |
| - it under the terms of the GNU General Public License as published by |
| - the Free Software Foundation; either version 3 of the License, or |
| - (at your option) any later version. |
| |
| - This program is distributed in the hope that it will be useful, |
| - but WITHOUT ANY WARRANTY; without even the implied warranty of |
| - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| - GNU General Public License for more details. |
| |
| - You should have received a copy of the GNU General Public License |
| - along with this program; if not, write to the Free Software |
| - Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. |
| |
| - chew.c keywords defined here put output into doc/*.texi files |
| - from comments in the source. See also proto.str. |
| |
| - True if SYNOPSIS was seen. |
| variable synopsis_seen |
| |
| : DOCDD |
| skip_past_newline |
| get_stuff_in_command kill_bogus_lines catstr |
| ; |
| |
| : ENDDD |
| skip_past_newline |
| ; |
| |
| : EXAMPLE |
| skip_past_newline |
| get_stuff_in_command kill_bogus_lines do_fancy_stuff translatecomments |
| courierize catstr |
| ; |
| |
| : INODE |
| "@node " catstr skip_past_newline copy_past_newline catstr |
| ; |
| |
| : CODE_FRAGMENT |
| EXAMPLE |
| ; |
| |
| : COMMENT |
| skip_past_newline |
| get_stuff_in_command |
| drop |
| ; |
| |
| : SYNOPSIS |
| skip_past_newline |
| 1 synopsis_seen ! |
| "@deftypefn {Function} " catstr |
| get_stuff_in_command |
| kill_bogus_lines |
| collapse_whitespace |
| indent |
| catstr |
| "\n" catstr |
| ; |
| |
| : func |
| "@findex " - a |
| skip_past_newline |
| copy_past_newline |
| dup - a x x |
| "@subsubsection @code{" - a x x b |
| swap |
| remchar |
| "}\n" - a x b x c |
| catstr catstr catstr catstr catstr |
| ; |
| |
| : bodytext |
| get_stuff_in_command |
| bulletize |
| kill_bogus_lines |
| do_fancy_stuff |
| courierize |
| catstr |
| "\n" catstr |
| ; |
| |
| : asection |
| skip_past_newline |
| catstr |
| copy_past_newline |
| do_fancy_stuff catstr |
| bodytext |
| ; |
| |
| : SECTION |
| "@section " asection ; |
| |
| : SUBSECTION |
| "@subsection " asection ; |
| |
| : SUBSUBSECTION |
| "@subsubsection " asection ; |
| |
| : subhead |
| skip_past_newline |
| bodytext |
| ; |
| |
| : DESCRIPTION |
| subhead |
| "@end deftypefn\n" synopsis_seen @ catstrif |
| 0 synopsis_seen ! |
| ; |
| |
| : FUNCTION |
| func ; |
| |
| : INTERNAL_FUNCTION |
| func ; |
| |
| : DEFINITION |
| func ; |
| |
| : INTERNAL_DEFINITION |
| func ; |
| |
| : EXTERNAL |
| COMMENT ; |
| |
| : INTERNAL |
| COMMENT ; |
| |
| : SENUM |
| skip_past_newline |
| "Here are the possible values for @code{enum " |
| copy_past_newline remchar catstr |
| "}:\n\n" catstr catstr |
| ; |
| : ENUM |
| skip_past_newline |
| "@deffn {} " |
| copy_past_newline catstr catstr |
| ; |
| : ENUMX |
| skip_past_newline |
| "@deffnx {} " |
| copy_past_newline catstr |
| catstr |
| ; |
| : ENUMEQ |
| skip_past_newline |
| "@deffn {} " |
| copy_past_newline catstr catstr |
| skip_past_newline |
| ; |
| : ENUMEQX |
| skip_past_newline |
| "@deffnx {} " |
| copy_past_newline catstr |
| catstr |
| skip_past_newline |
| ; |
| : ENUMDOC |
| skip_past_newline |
| get_stuff_in_command |
| strip_trailing_newlines |
| catstr |
| "\n@end deffn\n" catstr |
| ; |