]>
Commit | Line | Data |
---|---|---|
252b5132 RH |
1 | |
2 | : SYNOPSIS | |
3 | skip_past_newline | |
4 | get_stuff_in_command | |
5 | paramstuff | |
6 | indent | |
7 | maybecatstr | |
8 | ; | |
9 | ||
10 | : ignore | |
11 | skip_past_newline | |
12 | get_stuff_in_command | |
13 | outputdots | |
14 | maybecatstr | |
15 | ; | |
16 | ||
17 | : CODE_FRAGMENT | |
18 | ignore ; | |
19 | ||
20 | : external | |
21 | 0 internalmode ignore ; | |
22 | ||
23 | : internal | |
24 | 1 internalmode ignore ; | |
25 | ||
26 | - input stack { a b } output b if internal, a if external | |
27 | : ifinternal | |
28 | "" swap 1 internalmode maybecatstr | |
29 | swap | |
30 | "" swap 0 internalmode maybecatstr | |
31 | catstr | |
32 | ; | |
33 | ||
34 | - Put note in output string, regardless of internal mode. | |
35 | : COMMENT | |
36 | skip_past_newline | |
37 | get_stuff_in_command | |
38 | translatecomments | |
39 | catstr | |
40 | ; | |
41 | ||
42 | - SENUM enum-type-name | |
43 | - ENUM enum-name | |
44 | - ENUMX addl-enum-name | |
45 | - ENUMDOC doc for preceding enums | |
46 | - ENDSENUM max-enum-name | |
47 | ||
48 | : make_enum_header | |
49 | dup | |
50 | "enum " swap catstr | |
51 | " {\n" catstr | |
52 | swap " _dummy_first_" swap catstr catstr | |
53 | ",\n" catstr | |
54 | ; | |
55 | : make_string_table_header | |
56 | dup | |
57 | "#ifdef _BFD_MAKE_TABLE_" swap catstr swap | |
58 | "\n\nstatic const char *const " swap catstr catstr | |
59 | "_names[] = { \"@@uninitialized@@\",\n" catstr | |
60 | ; | |
61 | : SENUM | |
62 | skip_past_newline | |
63 | copy_past_newline | |
64 | remchar | |
65 | dup | |
66 | make_enum_header | |
67 | swap | |
68 | make_string_table_header | |
69 | ifinternal | |
70 | catstr | |
71 | get_stuff_in_command catstr | |
72 | translatecomments ; | |
73 | : ENDSENUM | |
74 | skip_past_newline | |
75 | copy_past_newline strip_trailing_newlines | |
76 | dup | |
77 | " " swap catstr " };\n" catstr swap | |
78 | " \"@@overflow: " swap catstr "@@\",\n};\n#endif\n\n" catstr | |
79 | ifinternal | |
80 | catstr | |
81 | ; | |
82 | : make_enumerator | |
83 | " " swap catstr | |
84 | ",\n" catstr | |
85 | ; | |
86 | : make_enumerator_string | |
87 | " \"" swap catstr | |
88 | "\",\n" catstr | |
89 | ; | |
90 | : ENUM | |
91 | skip_past_newline | |
92 | copy_past_newline | |
93 | remchar | |
94 | dup | |
95 | make_enumerator | |
96 | swap | |
97 | make_enumerator_string | |
98 | ifinternal | |
99 | ; | |
100 | : ENUMX ENUM catstr ; | |
101 | : ENUMEQ | |
102 | skip_past_newline | |
103 | "#define " | |
104 | copy_past_newline remchar | |
105 | catstr | |
106 | " " | |
107 | catstr | |
108 | copy_past_newline | |
109 | catstr | |
110 | "" swap 0 internalmode maybecatstr | |
111 | ; | |
112 | : ENUMEQX ENUMEQ catstr ; | |
113 | : ENUMDOC | |
114 | skip_past_newline | |
115 | get_stuff_in_command | |
116 | strip_trailing_newlines | |
b5f79c76 | 117 | "\n{* " swap catstr " *}\n" catstr |
252b5132 RH |
118 | translatecomments |
119 | - discard it if we're doing internal mode | |
120 | "" swap 0 internalmode maybecatstr | |
121 | swap | |
122 | catstr catstr | |
123 | ; | |
124 | : ENDDD external ; | |
125 | : SECTION ignore ; | |
126 | : SUBSECTION ignore ; | |
127 | : SUBSUBSECTION ignore ; | |
128 | : INTERNAL_DEFINITION internal ; | |
129 | : DESCRIPTION ignore ; | |
130 | : FUNCTION external ; | |
131 | : RETURNS ignore ; | |
132 | : TYPEDEF external ; | |
133 | : INTERNAL_FUNCTION internal ; | |
134 | : INTERNAL internal ; | |
135 | : INODE ignore ; |