Commit | Line | Data |
---|---|---|
d7cb65f2 | 1 | : BEGIN{die "You meant to run regen/embed.pl"} # Stop early if fed to perl. |
5a51db05 | 2 | : |
8fb6968f | 3 | : WARNING: The meanings of some flags have been changed as of v5.31.0 |
30628a6e | 4 | : |
8fb6968f KW |
5 | : This file is known to be processed by regen/embed.pl, autodoc.pl, |
6 | : makedef.pl, Devel::PPPort, and porting/diag.t. | |
7 | : | |
dcd299b4 KW |
8 | : This file contains entries for various functions and macros defined by perl. |
9 | : Each entry includes the name, parameters, and various attributes about it. | |
10 | : In most functions listed here, the name is a short name, and the function's | |
11 | : real name is the short one, prefixed by either 'Perl_' (for publicly visible | |
12 | : functions) or 'S_' (for internal-to-a-file static ones). In many instances a | |
13 | : macro is defined that is the name in this file, and which expands to call the | |
14 | : real (full) name, with any appropriate thread context paramaters, thus hiding | |
15 | : that detail from the typical code. | |
16 | : | |
c510ef2d | 17 | : Most macros (as opposed to function) listed here are the complete full name. |
dcd299b4 | 18 | : |
8fb6968f | 19 | : All non-static functions defined by perl need to be listed in this file. |
dcd299b4 KW |
20 | : embed.pl uses the entries here to construct: |
21 | : 1) proto.h to declare to the compiler the function interfaces; and | |
22 | : 2) embed.h to create short name macros | |
30628a6e | 23 | : |
dcd299b4 | 24 | : Static functions internal to a file need not appear here, but there is |
c510ef2d KW |
25 | : benefit to declaring them here: |
26 | : 1) It generally handles the thread context parameter invisibly making it | |
27 | : trivial to add or remove needing thread context passed; | |
28 | : 2) It defines a PERL_ARGS_ASSERT_foo macro, which can save you debugging | |
29 | : time; | |
30 | : 3) It is is automatically known to Devel::PPPort, making it quicker to | |
31 | : later find out when it came into existence. For example | |
32 | : perl ppport.h --api-info=/edit_distance/ | |
33 | : yields | |
34 | : Supported at least since perl-5.23.8, with or without ppport.h. | |
8fb6968f KW |
35 | : |
36 | : Lines in this file are of the form: | |
dcd299b4 | 37 | : flags|return_type|name|arg1|arg2|...|argN |
94bdecf9 | 38 | : |
caf8c6bc KW |
39 | : 'flags' is a string of single letters. Most of the flags are meaningful only |
40 | : to embed.pl; some only to autodoc.pl, and others only to makedef.pl. The | |
dcd299b4 | 41 | : comments here mostly don't include how Devel::PPPort or diag.t use them: |
caf8c6bc | 42 | : |
8fb6968f KW |
43 | : A function taking no parameters will have no 'arg' elements. |
44 | : A line may be continued onto the next by ending it with a backslash. | |
94bdecf9 JH |
45 | : Leading and trailing whitespace will be ignored in each component. |
46 | : | |
dcd299b4 KW |
47 | : Most entries here have a macro created with the entry name. This presents |
48 | : name space collision potentials which haven't been well thought out, but are | |
49 | : now documented here. In practice this has rarely been an issue. At least, | |
50 | : with a macro, the XS author can #undef it, unlike a function. | |
51 | : | |
d8bd2bed | 52 | : The default without flags is to declare a function for internal perl-core use |
dcd299b4 KW |
53 | : only. The short name is visible only when the PERL_CORE symbol is defined. |
54 | : On some platforms, such as Linux and Darwin, all non-static functions | |
caf8c6bc KW |
55 | : are currently externally visible. Because of this, and also for programs |
56 | : that embed perl, most non-static functions should have the 'p' flag to avoid | |
57 | : namespace clashes. | |
58 | : | |
dcd299b4 KW |
59 | : There are several advantages to using a macro instead of the full Perl_foo or |
60 | : S_foo form: it hides the need to know if the called function requires a | |
61 | : thread context parameter or not, and the code using it is more readable | |
62 | : because of fewer parameters being visible. And if there is some bug in it | |
63 | : that gets fixed in a later release, ppport.h can be changed to automatically | |
64 | : backport the fixed version to modules. The only disadvantage khw can think | |
65 | : of is the namespace pollution one. | |
66 | : | |
67 | : Since we don't require a C compiler to support variadic macros (C99), the | |
68 | : macros can't be generated in such situations. | |
69 | : | |
70 | : WARNING: Any macro created in a header file is visible to XS code, unless | |
71 | : care is taken to wrap it within something like #ifdef PERL_CORE..#endif. | |
72 | : This has had to be done with things like MAX and MIN, but nearly everything | |
73 | : else has been created without regard to the namespace pollution problem. | |
74 | : | |
f0656a59 KW |
75 | : Here's what else you need to know about using this file with regards to name |
76 | : space pollution: | |
77 | : | |
78 | : The A flag is used to make a function and its short name visible everywhere | |
79 | : on all platforms. This should be used to make it part of Perl's | |
80 | : API contract with XS developers. The documentation for these is | |
81 | : usually placed in perlapi. If no documentation exists, that fact | |
82 | : is also noted in perlapi. | |
83 | : | |
84 | : The C flag is used instead for functions and their short names that need to | |
85 | : be accessible everywhere, typically because they are called from a | |
86 | : publicly available macro or inline function, but they are not for | |
87 | : public use by themselves. The documentation for these is placed | |
88 | : in perlintern. If no documentation exists, that fact is also | |
89 | : noted in perlintern. | |
90 | : | |
91 | : These really need the 'p' flag to avoid name space collisions. | |
92 | : | |
93 | : Some of these have been constructed so that the wrapper macro | |
94 | : names begin with an underscore to lessen the chances of a name | |
95 | : collision. However, this is contrary to the C standard, and those | |
96 | : should be changed. | |
97 | : | |
98 | : The E flag is used instead for a function and its short name that is supposed | |
99 | : to be used only in the core, and in extensions compiled with the | |
100 | : PERL_EXT symbol defined. Again, on some platforms, the function | |
b31417ca KW |
101 | : will be visible everywhere, so one of the 'p' or 'S' flags is |
102 | : generally needed. Also note that an XS writer can always cheat | |
103 | : and pretend to be an extension by #defining PERL_EXT. | |
f0656a59 KW |
104 | : |
105 | : The X flag is similar to the C flag in that the function (whose entry better | |
106 | : have the 'p' flag) is accessible everywhere on all platforms. | |
107 | : However the short name macro that normally gets generated is | |
108 | : suppressed outside the core. (Except it is also visible in | |
109 | : PERL_EXT extensions if the E flag is also specified.) This flag | |
110 | : is used for functions that are called from a public macro, the | |
111 | : name of which isn't derived from the function name. You'll have | |
112 | : to write the macro yourself, and from within it, refer to the | |
113 | : function in its full 'Perl_' form with any necessary thread | |
114 | : context parameter. | |
d8bd2bed | 115 | : |
c510ef2d KW |
116 | : Just below is a description of the relevant parts of the automatic |
117 | : documentation generation system which heavily involves this file. Below that | |
118 | : is a description of all the flags used in this file. | |
119 | : | |
8fb6968f KW |
120 | : Scattered around the perl source are lines of the form: |
121 | : | |
122 | : =for apidoc name | |
c510ef2d KW |
123 | : =for apidoc_item name |
124 | : | |
125 | : followed by pod for that function. The purpose of these lines and the text | |
126 | : that immediately follows them is to furnish documentation for functions | |
127 | : and macros listed here in embed.fnc. The lines tend to be placed near the | |
128 | : source for the item they describe. autodoc.pl is run as part of the standard | |
129 | : build process to extract this documentation and build perlapi.pod from the | |
130 | : elements that are in the API (flagged as A in this file), and perlintern.pod | |
131 | : from the other elements. | |
132 | : | |
133 | : 'name' in the apidoc line corresponds to an item listed in this file, so that | |
134 | : the signature and flags need only be specified once, here, and automatically | |
135 | : they get placed into the generated pod. | |
136 | : | |
137 | : 'apidoc_item' is used for subsidiary entries, which share the same pod as the | |
138 | : plain apidoc one does. Thus the documentation for functions which do | |
139 | : essentially the same thing, but with minor differences can all be placed in | |
140 | : the same entry. The apidoc_item lines must all come after the apidoc line | |
141 | : and before the pod for the entry. | |
142 | : | |
143 | : The entries in this file that have corresponding '=for apidoc' entries must | |
144 | : have the 'd' flag set in this file. | |
145 | : | |
146 | : In C files, the apidoc lines are inside comment blocks. They may also be | |
147 | : placed in pod files. In those, the =for causes lines from there until the | |
148 | : next line beginning with an '=' to not be considered part of that pod. | |
149 | : | |
150 | : The 'h' flag is used to hide (suppress) the pod associated with =apidoc lines | |
151 | : from being placed in the generated perlapi or perlintern. There are several | |
152 | : reasons you might want to do this, given in the 'h' flag description below, | |
153 | : but one is for the case where the =apidoc occurs in a file that contains | |
154 | : regular pod. Without that flag, the associated pod will be placed in both | |
155 | : it, and perlapi or perlintern. That may be what you want, but it gives you | |
156 | : the flexibility to choose that, or instead have just a link to the source pod | |
157 | : inserted in perlapi or perlintern. This allows single-source browsing for | |
158 | : someone; they don't have to scan multiple pods trying to find something | |
159 | : suitable. | |
160 | : | |
161 | : There are also lines of this form scattered around the perl | |
162 | : source: | |
163 | : | |
164 | : =for apidoc_section Section Name | |
165 | : =head1 Section Name | |
166 | : | |
167 | : These aren't tied to this embed.fnc file, and so are documented in autodoc.pl. | |
168 | : | |
169 | : What goes into the documentation of a particular function ends with the next | |
170 | : line that begins with an '='. In particular, an '=cut' line ends that | |
171 | : documentation without introducing something new. | |
172 | : | |
173 | : Various macros and other elements aren't listed here in embed.fnc. They are | |
174 | : documented in the same manner, but since they don't have this file to get | |
175 | : information from, the defining lines have the syntax and meaning they do in | |
176 | : this file, so it can be specified: | |
8fb6968f | 177 | : |
c510ef2d KW |
178 | : =for apidoc flags|return_type|name|arg1|arg2|...|argN |
179 | : =for apidoc_item flags|return_type|name|arg1|arg2|...|argN | |
caf8c6bc | 180 | : |
c510ef2d KW |
181 | : The 'name' in any such line must not be the same as any in this file (i.e., |
182 | : no redundant definitions), and one of the flags on the apidoc lines must be | |
9e728159 | 183 | : 'm' or 'y', indicating it is not a function. |
8fb6968f | 184 | : |
c510ef2d KW |
185 | : All but the name field of an apidoc_item line are optional, and if empty, |
186 | : inherits from the controlling plain apidoc line. The flags field is | |
187 | : generally empty, and in fact, the only flags it can have are ones directly | |
188 | : related to its display. For example it might have the T flag to indicate no | |
189 | : thread context parameter is used, whereas the apidoc entry does have a thread | |
190 | : context. Here is an example: | |
191 | : | |
192 | : =for apidoc Am|char* |SvPV |SV* sv|STRLEN len | |
193 | : =for apidoc_item |const char*|SvPV_const |SV* sv|STRLEN len | |
194 | : =for apidoc_item |char* |SvPV_nolen |SV* sv | |
195 | : | |
196 | : Since these are macros, the arguments need not be legal C parameters. To | |
197 | : indicate this to downstream software that inspects these lines, there are a | |
198 | : few conventions. An example would be: | |
8fb6968f | 199 | : |
caf8c6bc KW |
200 | : =for apidoc Am|void|Newxc|void* ptr|int nitems|type|cast |
201 | : | |
c510ef2d KW |
202 | : In this example, a real call of Newxc, 'type' would be specified as something |
203 | : like 'int' or 'char', and 'cast' by perhaps 'struct foo'. | |
204 | : | |
205 | : The complete list of conventions is: | |
206 | : type the argument names a type | |
207 | : cast the argument names a type which the macro casts to | |
208 | : SP the argument is the stack pointer, SP | |
209 | : block the argument is a C brace-enclosed block | |
210 | : number the argument is a C numeric constant, like 3 | |
211 | : token the argument is a generic C preprocessor token, like abc | |
212 | : "string" the argument is a literal C double-quoted string; what's important | |
213 | : here are the quotes; for clarity, you can say whatever you want | |
214 | : inside them | |
caf8c6bc | 215 | : |
c510ef2d KW |
216 | : Unlike other arguments, none of these is of the form 'int name'. There is no |
217 | : name. | |
dcd299b4 | 218 | : |
c510ef2d KW |
219 | : If any argument or return value is not one of the above, and isn't legal C |
220 | : language, the entry still can be specified, using the 'u' flag. | |
221 | : | |
222 | : 'return_type' in these lines can be empty, unlike in this file: | |
223 | : | |
224 | : =for apidoc Amnu||START_EXTERN_C | |
8fb6968f KW |
225 | : |
226 | : Devel::PPPort also looks at both this file and the '=for apidoc' lines. In | |
c510ef2d | 227 | : part it is to construct lists of elements that are or are not backported. |
8fb6968f | 228 | : |
dcd299b4 KW |
229 | : makedef.pl uses this file for constructing the export list which lists the |
230 | : symbols that should be available on all platforms. | |
8fb6968f KW |
231 | : |
232 | : porting/diag.t checks some things for consistency based on this file. | |
233 | : | |
dcd299b4 | 234 | : The remainder of these introductory comments detail all the possible flags: |
d412580b | 235 | : |
dcd299b4 KW |
236 | : A Both long and short names are accessible fully everywhere (usually part |
237 | : of the public API). If the function is not part of the public API, | |
ff5af78d | 238 | : instead use C, E, or X. |
d412580b | 239 | : |
dcd299b4 KW |
240 | : add entry to the list of symbols available on all platforms |
241 | : unless e or m are also specified; | |
242 | : any doc entry goes in perlapi.pod rather than perlintern.pod. If | |
243 | : there isn't a doc entry, autodoc.pl lists this in perlapi as | |
244 | : existing and being undocumented; unless x is also specified, in | |
245 | : which case it simply isn't listed. | |
246 | : makes the short name defined for everywhere, not just for | |
247 | : PERL_CORE/PERL_EXT | |
569ba91f | 248 | : |
dcd299b4 KW |
249 | : a Allocates memory a la malloc/calloc. Also implies "R". This flag |
250 | : should only be on a function which returns 'empty' memory which has no | |
251 | : other pointers to it, and which does not contain any pointers to other | |
252 | : things. So for example realloc() can't be 'a'. | |
d412580b DM |
253 | : |
254 | : proto.h: add __attribute__malloc__ | |
255 | : | |
3f1866a8 KW |
256 | : b Binary backward compatibility. This is used for functions which are |
257 | : kept only to not have to change legacy applications that call them. If | |
258 | : there are no such legacy applications in a Perl installation for all | |
259 | : functions flagged with this, the installation can run Configure with the | |
e24a96ba KW |
260 | : -Accflags='-DNO_MATHOMS' parameter to not even compile them. |
261 | : | |
262 | : Sometimes the function has been subsumed by a more general one (say, by | |
dcd299b4 KW |
263 | : adding a flags parameter), and a macro exists with the original short |
264 | : name API, and it calls the new function, bypassing this one, and the | |
265 | : original 'Perl_' form is being deprecated. In this case also specify | |
266 | : the 'M' flag. | |
267 | : | |
268 | : Without the M flag, these functions should be deprecated, and it is an | |
269 | : error to not also specify the 'D' flag. | |
270 | : | |
271 | : The 'b' functions are normally moved to mathoms.c, but if circumstances | |
e24a96ba KW |
272 | : dictate otherwise, they can be anywhere, provided the whole function is |
273 | : wrapped with | |
274 | : #ifndef NO_MATHOMS | |
275 | : ... | |
276 | : #endif | |
d412580b | 277 | : |
5ff52e3c KW |
278 | : Note that this flag no longer automatically adds a 'Perl_' prefix to the |
279 | : name. Additionally specify 'p' to do that. | |
280 | : | |
3f1866a8 | 281 | : This flag effectively causes nothing to happen if the perl interpreter |
dcd299b4 KW |
282 | : is compiled with -DNO_MATHOMS (which causes any functions with this flag |
283 | : to not be compiled); otherwise these happen: | |
284 | : add entry to the list of symbols available on all platforms; | |
d8bd2bed | 285 | : create PERL_ARGS_ASSERT_foo; |
dcd299b4 | 286 | : add embed.h entry (unless overridden by the 'M' or 'o' flags) |
d412580b | 287 | : |
ff5af78d KW |
288 | : C Intended for core use only. This indicates to XS writers that they |
289 | : shouldn't be using this function. Devel::PPPort informs them of this, | |
290 | : for example. Some functions have to be accessible everywhere even if | |
291 | : they are not intended for public use. An example is helper functions | |
292 | : that are called from inline ones that are publicly available. | |
293 | : | |
294 | : add entry to the list of symbols available on all platforms | |
295 | : unless e or m are also specified; | |
296 | : any doc entry goes in perlintern.pod rather than perlapi.pod. If | |
297 | : there isn't a doc entry, autodoc.pl lists this in perlintern as | |
298 | : existing and being undocumented | |
299 | : makes the short name defined for everywhere, not just for | |
300 | : PERL_CORE/PERL_EXT | |
301 | : | |
d412580b DM |
302 | : D Function is deprecated: |
303 | : | |
304 | : proto.h: add __attribute__deprecated__ | |
8fb6968f | 305 | : autodoc.pl adds a note to this effect in the doc entry |
d412580b | 306 | : |
6ef8d77a | 307 | : d Function has documentation (somewhere) in the source: |
d412580b | 308 | : |
64b17d72 KW |
309 | : enables 'no docs for foo" warning in autodoc.pl if the documentation |
310 | : isn't found. | |
d412580b DM |
311 | : |
312 | : E Visible to extensions included in the Perl core: | |
313 | : | |
314 | : in embed.h, change "#ifdef PERL_CORE" | |
315 | : into "#if defined(PERL_CORE) || defined(PERL_EXT)" | |
316 | : | |
8fb6968f | 317 | : To be usable from dynamically loaded extensions, either: |
11ab6d3b | 318 | : 1) it must be static to its containing file ("i" or "S" flag); or |
d212d222 | 319 | : 2) be combined with the "X" flag. |
23fb3b56 | 320 | : |
5af72e99 | 321 | : e Not exported |
30628a6e | 322 | : |
dcd299b4 | 323 | : suppress entry in the list of symbols available on all platforms |
5af72e99 | 324 | : |
d8bd2bed | 325 | : f Function takes a format string. If the function name =~ qr/strftime/ |
dcd299b4 | 326 | : then it is assumed to take a strftime-style format string as the 1st |
8069a3d0 KW |
327 | : arg; otherwise it's assumed to take a printf style format string, not |
328 | : necessarily the 1st arg. All the arguments following it (including | |
329 | : possibly '...') are assumed to be for the format. | |
d412580b | 330 | : |
8069a3d0 | 331 | : embed.h: any entry in here is suppressed because of varargs |
d412580b DM |
332 | : proto.h: add __attribute__format__ (or ...null_ok__) |
333 | : | |
29f5f37e KW |
334 | : F Function has a '...' parameter, but don't assume it is a format. This |
335 | : is to make sure that new functions with formats can't be added without | |
336 | : considering if they are format functions or not. A reason to use this | |
337 | : flag even on a format function is if the format would generate | |
338 | : error: format string argument is not a string type | |
339 | : | |
2015d234 KW |
340 | : G Suppress empty PERL_ARGS_ASSERT_foo macro. Normally such a macro is |
341 | : generated for all entries for functions 'foo' in this file. If there is | |
342 | : a pointer argument to 'foo', it needs to be declared in this file as | |
343 | : either NN or NULLOK, and the function definition must call its | |
344 | : corresponding PERL_ARGS_ASSERT_foo macro (a porting test ensures this) | |
345 | : which asserts at runtime (under DEBUGGING builds) that NN arguments are | |
346 | : not NULL. If there aren't NN arguments, use of this macro is optional. | |
347 | : Rarely, a function will define its own PERL_ARGS_ASSERT_foo macro, and | |
348 | : in those cases, adding this flag to its entry in this file will suppress | |
349 | : the normal one. It is not possible to suppress the generated macro if | |
350 | : it isn't optional, that is, if there is at least one NN argument. | |
351 | : | |
352 | : proto.h: PERL_ARGS_ASSERT macro is not defined unless the function | |
353 | : has NN arguments | |
354 | : | |
c510ef2d KW |
355 | : h Hide any documentation that would normally go into perlapi or |
356 | : perlintern. This is typically used when the documentation is actually | |
357 | : in another pod. If you don't use the 'h', that documentation is | |
358 | : displayed in both places; with the flag, it stays in the pod, and a | |
359 | : link to that pod is instead placed in perlapi or perlintern. This | |
360 | : allows one to browse perlapi or perlintern and see all the potentially | |
361 | : relevant elements. A good example is perlapio. It has documentation | |
362 | : about PerlIO functions with other text giving context. There's no point | |
363 | : in writing a second entry for perlapi, but it would be good if someone | |
364 | : browsing perlapi knew about it. By adding '=for apidoc' lines in | |
365 | : perlapio, the appropriate text could be simply copied into perlapi if | |
366 | : deemed appropriate, or just a link added there when the 'h' flag is | |
367 | : specified. | |
368 | : This flag is useful for symbolic names for flags. A single =for apidoc | |
369 | : line can be added to the pod where the meaning is discussed, and perlapi | |
370 | : will list the name, with a link to the pod. Another use would be if | |
371 | : there are a bunch of macros which follow a common paradigm in their | |
372 | : naming, so rather than having an entry for each slight variation, there | |
373 | : is an overarching one. This flag is useful for downstream programs, | |
374 | : such as Devel::PPPort. | |
dcd299b4 KW |
375 | : |
376 | : i inline static. This is used for functions that the compiler is being | |
377 | : requested to inline. If the function is in a header file its | |
378 | : definition will be visible (unless guarded by #if..#endif) to all | |
379 | : XS code. (A typical guard will be that it is being included in a | |
380 | : particular C file(s) or in the perl core.) Therefore, all | |
712d27b1 | 381 | : non-guarded functions should also have the 'p' flag specified to avoid |
dcd299b4 KW |
382 | : polluting the XS code name space. Otherwise an error is generated if |
383 | : the 'S' flag is not also specified. | |
384 | : | |
385 | : proto.h: function is declared as PERL_STATIC_INLINE | |
386 | : | |
783cb485 KW |
387 | : I This flag works exactly the same as 'i' but it also adds |
388 | : __attribute__((always_inline)) or __forceinline if either of them is | |
389 | : supported by the compiler. | |
390 | : | |
391 | : proto.h: function is declared as PERL_STATIC_FORCE_INLINE and | |
392 | : __attribute__always_inline__ is added | |
393 | : | |
dcd299b4 | 394 | : m Implemented as a macro; there is no function associated with this name, |
2f4e6339 KW |
395 | : and hence no long Perl_ or S_ name. However, if the macro name itself |
396 | : begins with 'Perl_', autodoc.pl will show a thread context parameter | |
397 | : unless the 'T' flag is specified. | |
dcd299b4 KW |
398 | : |
399 | : suppress proto.h entry (actually, not suppressed, but commented out) | |
400 | : suppress entry in the list of exported symbols available on all platforms | |
401 | : suppress embed.h entry, as the implementation should furnish the macro | |
402 | : | |
403 | : M The implementation is furnishing its own macro instead of relying on the | |
404 | : default short name macro that simply expands to call the real name | |
405 | : function. This is used if the parameters need to be cast from what the | |
406 | : caller has, or if there is a macro that bypasses this function (whose | |
407 | : long name is being retained for backward compatibility for those who | |
408 | : call it with that name). An example is when a new function is created | |
409 | : with an extra parameter and a wrapper macro is added that has the old | |
410 | : API, but calls the new one with the exta parameter set to a default. | |
411 | : | |
412 | : This flag requires the 'p' flag to be specified, as there would be no | |
413 | : need to do this if the function weren't publicly accessible before. | |
414 | : | |
415 | : The entry is processed based on the other flags, but the: | |
416 | : embed.h entry is suppressed | |
d412580b | 417 | : |
0a60f600 KW |
418 | : N The name in the entry isn't strictly a name |
419 | : | |
420 | : Normally, the name of the function or macro must contain all \w | |
421 | : characters, and a warning is raised otherwise. This flag suppresses | |
8fb6968f | 422 | : that warning, so that weird things can be documented |
d412580b | 423 | : |
e2bfa9e8 KW |
424 | : n Has no arguments. Perhaps a better name would have been '0'. (used only |
425 | : in =for apidoc entries) | |
426 | : | |
1fcde0e9 KW |
427 | : The macro (it can't be a function) is used without any parameters nor |
428 | : empty parentheses. | |
d412580b | 429 | : |
c510ef2d KW |
430 | : Perhaps a better name for this flag would have been '0'. The reason the |
431 | : flag was not changed to that from 'n', is if D:P were to be regenerated | |
432 | : on an older perl, it still would use the new embed.fnc shipped with it, | |
433 | : but would be using the flags from the older perl source code. | |
434 | : | |
435 | : | |
7b53c8ee NC |
436 | : O Has a perl_ compatibility macro. |
437 | : | |
8fb6968f | 438 | : The really OLD name for API funcs. |
30628a6e | 439 | : |
8fb6968f KW |
440 | : autodoc.pl adds a note that the perl_ form of this function is |
441 | : deprecated. | |
442 | : | |
37ccf918 | 443 | : o Has no Perl_foo or S_foo compatibility macro: |
d412580b | 444 | : |
dcd299b4 KW |
445 | : This is used for whatever reason to force the function to be called |
446 | : with the long name. Perhaps there is a varargs issue. Use the 'M' | |
447 | : flag instead for wrapper macros, and legacy-only functions should | |
448 | : also use 'b'. | |
59f80a35 | 449 | : |
d412580b DM |
450 | : embed.h: suppress "#define foo Perl_foo" |
451 | : | |
8fb6968f | 452 | : autodoc.pl adds a note that this function must be explicitly called as |
dcd299b4 | 453 | : Perl_$name with an aTHX_ parameter. |
8fb6968f | 454 | : |
d8bd2bed KW |
455 | : P Pure function: |
456 | : | |
eafb5713 KW |
457 | : A pure function has no effects except the return value, and the return |
458 | : value depends only on params and/or globals. This is a hint to the | |
459 | : compiler that it can optimize calls to this function out of common | |
460 | : subexpressions. Consequently if this flag is wrongly specified, it can | |
461 | : lead to subtle bugs that vary by platform, compiler, compiler version, | |
462 | : and optimization level. Also, a future commit could easily change a | |
463 | : currently-pure function without even noticing this flag. So it should | |
464 | : be used sparingly, only for functions that are unlikely to ever become | |
465 | : not pure by future commits. It should not be used for static | |
466 | : functions, as the compiler already has the information needed to make | |
467 | : the 'pure' determination and doesn't need any hint; so it doesn't add | |
468 | : value in those cases, and could be dangerous if it causes the compiler | |
469 | : to skip doing its own checks. It should not be used on functions that | |
470 | : touch SVs, as those can trigger unexpected magic. Also implies "R": | |
d412580b DM |
471 | : |
472 | : proto.h: add __attribute__pure__ | |
473 | : | |
474 | : p Function in source code has a Perl_ prefix: | |
475 | : | |
476 | : proto.h: function is declared as Perl_foo rather than foo | |
477 | : embed.h: "#define foo Perl_foo" entries added | |
478 | : | |
b289a0bd | 479 | : R Return value must not be ignored (also implied by 'a' and 'P' flags): |
d412580b | 480 | : |
e1ebd5bb KW |
481 | : gcc has a bug (which they claim is a feature) in which casting the |
482 | : result of one of these to (void) doesn't silence the warning that the | |
f71af6ba KW |
483 | : result is ignored. (Perl has a workaround for this bug, see |
484 | : PERL_UNUSED_RESULT docs) | |
e1ebd5bb | 485 | : |
d412580b DM |
486 | : proto.h: add __attribute__warn_unused_result__ |
487 | : | |
488 | : r Function never returns: | |
489 | : | |
490 | : proto.h: add __attribute__noreturn__ | |
491 | : | |
9f589e47 | 492 | : S Static function: function in source code has a S_ prefix: |
d412580b DM |
493 | : |
494 | : proto.h: function is declared as S_foo rather than foo, | |
495 | : STATIC is added to declaration; | |
496 | : embed.h: "#define foo S_foo" entries added | |
497 | : | |
8b5ff177 KW |
498 | : s autodoc.pl adds a terminating semi-colon to the usage example in the |
499 | : documentation. | |
500 | : | |
45b29440 KW |
501 | : T Has no implicit interpreter/thread context argument: |
502 | : | |
503 | : suppress the pTHX part of "foo(pTHX...)" in proto.h; | |
504 | : In the PERL_IMPLICIT_SYS branch of embed.h, generates | |
505 | : "#define foo Perl_foo", rather than | |
506 | : "#define foo(a,b,c) Perl_foo(aTHX_ a,b,c) | |
507 | : | |
caf8c6bc KW |
508 | : u The macro's (it has to be a macro) return value or parameters are |
509 | : unorthodox, and aren't in the list above of recognized weird ones. For | |
3dbfa774 KW |
510 | : example, they aren't C parameters, or the macro expands to something |
511 | : that isn't a symbol. | |
512 | : | |
caf8c6bc KW |
513 | : For example, the expansion of STR_WITH_LEN is a comma separated pair of |
514 | : values, so would have this flag; or some macros take preprocessor | |
515 | : tokens, so would have this flag. This flag is an indication to | |
516 | : downstream tools, such as Devel::PPPort, that this requires special | |
517 | : handling. | |
3dbfa774 | 518 | : |
8fb6968f | 519 | : U autodoc.pl will not output a usage example |
d412580b | 520 | : |
21553840 YO |
521 | : W Add a _pDEPTH argument to function prototypes, and an _aDEPTH |
522 | : argument to the function calls. This means that under DEBUGGING | |
523 | : a depth argument is added to the functions, which is used for | |
524 | : example by the regex engine for debugging and trace output. | |
525 | : A non DEBUGGING build will not pass the unused argument. | |
526 | : Currently restricted to functions with at least one argument. | |
527 | : | |
d412580b DM |
528 | : X Explicitly exported: |
529 | : | |
dcd299b4 KW |
530 | : add entry to the list of symbols available on all platforms, unless e |
531 | : or m | |
d412580b | 532 | : |
569ba91f FC |
533 | : This is often used for private functions that are used by public |
534 | : macros. In those cases the macros must use the long form of the | |
535 | : name (Perl_blah(aTHX_ ...)). | |
536 | : | |
e4aeb12f | 537 | : x Experimental, may change: |
d412580b | 538 | : |
e4aeb12f | 539 | : any doc entry is marked that it may change. Also used to suppress |
dcd299b4 | 540 | : making a perlapi doc entry if it would just be a placeholder. |
d412580b | 541 | : |
9e728159 KW |
542 | : y Typedef. The element names a type rather than being a macro |
543 | : | |
8fb6968f KW |
544 | : In this file, pointer parameters that must not be passed NULLs should be |
545 | : prefixed with NN. | |
94bdecf9 | 546 | : |
8fb6968f KW |
547 | : And, pointer parameters that may be NULL should be prefixed with NULLOK. |
548 | : This has no effect on output yet. It's a notation for the maintainers to | |
549 | : know "I have defined whether NULL is OK or not" rather than having neither | |
550 | : NULL or NULLOK, which is ambiguous. | |
1b6737cc | 551 | : |
8fb6968f | 552 | : Individual flags may be separated by non-tab whitespace. |
94bdecf9 | 553 | |
24f3e849 KW |
554 | CipRTX |char * |mortal_getenv |NN const char * str |
555 | ||
94bdecf9 | 556 | #if defined(PERL_IMPLICIT_SYS) |
45b29440 | 557 | ATo |PerlInterpreter*|perl_alloc_using \ |
4048f010 NC |
558 | |NN struct IPerlMem *ipM \ |
559 | |NN struct IPerlMem *ipMS \ | |
560 | |NN struct IPerlMem *ipMP \ | |
561 | |NN struct IPerlEnv *ipE \ | |
562 | |NN struct IPerlStdIO *ipStd \ | |
16bf6295 | 563 | |NN struct IPerlLIO *ipLIO \ |
4048f010 NC |
564 | |NN struct IPerlDir *ipD \ |
565 | |NN struct IPerlSock *ipS \ | |
566 | |NN struct IPerlProc *ipP | |
94bdecf9 | 567 | #endif |
45b29440 KW |
568 | ATod |PerlInterpreter* |perl_alloc |
569 | ATod |void |perl_construct |NN PerlInterpreter *my_perl | |
570 | ATod |int |perl_destruct |NN PerlInterpreter *my_perl | |
571 | ATod |void |perl_free |NN PerlInterpreter *my_perl | |
572 | ATod |int |perl_run |NN PerlInterpreter *my_perl | |
573 | ATod |int |perl_parse |NN PerlInterpreter *my_perl|XSINIT_t xsinit \ | |
7827dc65 | 574 | |int argc|NULLOK char** argv|NULLOK char** env |
45b29440 | 575 | ATpR |bool |doing_taint |int argc|NULLOK char** argv|NULLOK char** env |
94bdecf9 | 576 | #if defined(USE_ITHREADS) |
45b29440 | 577 | ATod |PerlInterpreter*|perl_clone|NN PerlInterpreter *proto_perl|UV flags |
94bdecf9 | 578 | # if defined(PERL_IMPLICIT_SYS) |
45b29440 | 579 | ATo |PerlInterpreter*|perl_clone_using \ |
589df73b SH |
580 | |NN PerlInterpreter *proto_perl \ |
581 | |UV flags \ | |
582 | |NN struct IPerlMem* ipM \ | |
583 | |NN struct IPerlMem* ipMS \ | |
584 | |NN struct IPerlMem* ipMP \ | |
585 | |NN struct IPerlEnv* ipE \ | |
586 | |NN struct IPerlStdIO* ipStd \ | |
587 | |NN struct IPerlLIO* ipLIO \ | |
588 | |NN struct IPerlDir* ipD \ | |
589 | |NN struct IPerlSock* ipS \ | |
590 | |NN struct IPerlProc* ipP | |
94bdecf9 JH |
591 | # endif |
592 | #endif | |
593 | ||
7dfc378e KW |
594 | AaTophd |Malloc_t|malloc |MEM_SIZE nbytes |
595 | AaTophd |Malloc_t|calloc |MEM_SIZE elements|MEM_SIZE size | |
596 | ARTophd |Malloc_t|realloc |Malloc_t where|MEM_SIZE nbytes | |
45b29440 | 597 | ATop |Free_t |mfree |Malloc_t where |
94bdecf9 | 598 | #if defined(MYMALLOC) |
45b29440 KW |
599 | TpR |MEM_SIZE|malloced_size |NN void *p |
600 | TpR |MEM_SIZE|malloc_good_size |size_t nbytes | |
94bdecf9 | 601 | #endif |
03f05cb4 | 602 | #if defined(PERL_IN_MALLOC_C) |
9f589e47 | 603 | ST |int |adjust_size_and_find_bucket |NN size_t *nbytes_p |
03f05cb4 | 604 | #endif |
94bdecf9 | 605 | |
45b29440 KW |
606 | ATpR |void* |get_context |
607 | ATp |void |set_context |NN void *t | |
94bdecf9 | 608 | |
6f1401dc DM |
609 | XEop |bool |try_amagic_bin |int method|int flags |
610 | XEop |bool |try_amagic_un |int method|int flags | |
46c461b5 | 611 | Ap |SV* |amagic_call |NN SV* left|NN SV* right|int method|int dir |
25a9ffce | 612 | Ap |SV * |amagic_deref_call|NN SV *ref|int method |
8d569291 | 613 | p |bool |amagic_is_enabled|int method |
c3a9a790 | 614 | Ap |int |Gv_AMupdate |NN HV* stash|bool destructing |
890ce7af | 615 | ApR |CV* |gv_handler |NULLOK HV* stash|I32 id |
2fcb4757 Z |
616 | Apd |OP* |op_append_elem |I32 optype|NULLOK OP* first|NULLOK OP* last |
617 | Apd |OP* |op_append_list |I32 optype|NULLOK OP* first|NULLOK OP* last | |
5983a79d | 618 | Apd |OP* |op_linklist |NN OP *o |
2fcb4757 | 619 | Apd |OP* |op_prepend_elem|I32 optype|NULLOK OP* first|NULLOK OP* last |
67022846 | 620 | : FIXME - this is only called by pp_chown. They should be merged. |
890ce7af | 621 | p |I32 |apply |I32 type|NN SV** mark|NN SV** sp |
e4aeb12f | 622 | Apx |void |apply_attrs_string|NN const char *stashpv|NN CV *cv|NN const char *attrstr|STRLEN len |
4048f010 | 623 | Apd |void |av_clear |NN AV *av |
c70927a6 FC |
624 | Apd |SV* |av_delete |NN AV *av|SSize_t key|I32 flags |
625 | ApdR |bool |av_exists |NN AV *av|SSize_t key | |
fc16c392 FC |
626 | Apd |void |av_extend |NN AV *av|SSize_t key |
627 | p |void |av_extend_guts |NULLOK AV *av|SSize_t key \ | |
628 | |NN SSize_t *maxp \ | |
7261499d | 629 | |NN SV ***allocp|NN SV ***arrayp |
c70927a6 FC |
630 | ApdR |SV** |av_fetch |NN AV *av|SSize_t key|I32 lval |
631 | Apd |void |av_fill |NN AV *av|SSize_t fill | |
632 | ApdR |SSize_t|av_len |NN AV *av | |
633 | ApdR |AV* |av_make |SSize_t size|NN SV **strp | |
1f1dcfb5 | 634 | p |SV* |av_nonelem |NN AV *av|SSize_t ix |
4048f010 | 635 | Apd |SV* |av_pop |NN AV *av |
e4aeb12f | 636 | Apdoex |void |av_create_and_push|NN AV **const avp|NN SV *const val |
06942096 | 637 | Apd |void |av_push |NN AV *av|NN SV *val |
d67fec57 | 638 | : Used in scope.c, and by Data::Alias |
4048f010 NC |
639 | EXp |void |av_reify |NN AV *av |
640 | ApdR |SV* |av_shift |NN AV *av | |
c70927a6 | 641 | Apd |SV** |av_store |NN AV *av|SSize_t key|NULLOK SV *val |
bd5fa066 | 642 | AmdR |SSize_t|av_top_index |NN AV *av |
87306e06 | 643 | AidRp |Size_t |av_count |NN AV *av |
ef9e3b4d | 644 | AmdR |SSize_t|av_tindex |NN AV *av |
4048f010 | 645 | Apd |void |av_undef |NN AV *av |
e4aeb12f | 646 | Apdoex |SV** |av_create_and_unshift_one|NN AV **const avp|NN SV *const val |
c70927a6 | 647 | Apd |void |av_unshift |NN AV *av|SSize_t num |
4048f010 NC |
648 | Apo |SV** |av_arylen_p |NN AV *av |
649 | Apo |IV* |av_iter_p |NN AV *av | |
43869a0c | 650 | #if defined(PERL_IN_AV_C) |
9f589e47 | 651 | S |MAGIC* |get_aux_mg |NN AV *av |
878d132a | 652 | #endif |
d67fec57 | 653 | : Used in perly.y |
4048f010 | 654 | pR |OP* |bind_match |I32 type|NN OP *left|NN OP *right |
d67fec57 | 655 | : Used in perly.y |
25f5d540 | 656 | ApdR |OP* |block_end |I32 floor|NULLOK OP* seq |
1c23e2bd | 657 | ApR |U8 |block_gimme |
d67fec57 | 658 | : Used in perly.y |
25f5d540 | 659 | ApdR |int |block_start |int full |
e4aeb12f | 660 | Aodxp |void |blockhook_register |NN BHK *hk |
d67fec57 | 661 | : Used in perl.c |
94bdecf9 | 662 | p |void |boot_core_UNIVERSAL |
d67fec57 | 663 | : Used in perl.c |
94bdecf9 | 664 | p |void |boot_core_PerlIO |
4048f010 | 665 | Ap |void |call_list |I32 oldscope|NN AV *paramList |
8dff4fc5 BM |
666 | Apd |const PERL_CONTEXT * |caller_cx|I32 level \ |
667 | |NULLOK const PERL_CONTEXT **dbcxp | |
486ec47a | 668 | : Used in several source files |
ae1951c1 | 669 | pR |bool |cando |Mode_t mode|bool effective|NN const Stat_t* statbufp |
b6d2403a KW |
670 | CpRT |U32 |cast_ulong |NV f |
671 | CpRT |I32 |cast_i32 |NV f | |
672 | CpRT |IV |cast_iv |NV f | |
673 | CpRT |UV |cast_uv |NV f | |
94bdecf9 | 674 | #if !defined(HAS_TRUNCATE) && !defined(HAS_CHSIZE) && defined(F_FREESP) |
53c1dcc0 | 675 | ApR |I32 |my_chsize |int fd|Off_t length |
94bdecf9 | 676 | #endif |
25502127 FC |
677 | p |const COP*|closest_cop |NN const COP *cop|NULLOK const OP *o \ |
678 | |NULLOK const OP *curop|bool opnext | |
d67fec57 | 679 | : Used in perly.y |
03d05f6e | 680 | ApdR |OP* |op_convert_list |I32 optype|I32 flags|NULLOK OP* o |
d67fec57 | 681 | : Used in op.c and perl.c |
e4aeb12f | 682 | px |void |create_eval_scope|NULLOK OP *retop|U32 flags |
c5df3096 | 683 | Aprd |void |croak_sv |NN SV *baseex |
551405c4 | 684 | : croak()'s first parm can be NULL. Otherwise, mod_perl breaks. |
cdfeb707 | 685 | Afprd |void |croak |NULLOK const char* pat|... |
c5df3096 | 686 | Aprd |void |vcroak |NULLOK const char* pat|NULLOK va_list* args |
45b29440 KW |
687 | ATprd |void |croak_no_modify |
688 | ATprd |void |croak_xs_usage |NN const CV *const cv \ | |
afa74d42 | 689 | |NN const char *const params |
45b29440 KW |
690 | Tpr |void |croak_no_mem |
691 | TprX |void |croak_popstack | |
692 | fTrp |void |croak_caller|NULLOK const char* pat|... | |
5af72e99 | 693 | fTpre |void |noperl_die|NN const char* pat|... |
073dd035 | 694 | #if defined(WIN32) |
5af72e99 | 695 | Tore |void |win32_croak_not_implemented|NN const char * fname |
073dd035 | 696 | #endif |
94bdecf9 | 697 | #if defined(PERL_IMPLICIT_CONTEXT) |
3d12c238 KW |
698 | AdfTrp |void |croak_nocontext|NULLOK const char* pat|... |
699 | AdfTrp |OP* |die_nocontext |NULLOK const char* pat|... | |
45b29440 | 700 | AfTp |void |deb_nocontext |NN const char* pat|... |
3d12c238 KW |
701 | AdfTp |char* |form_nocontext |NN const char* pat|... |
702 | AdFTp |void |load_module_nocontext|U32 flags|NN SV* name|NULLOK SV* ver|... | |
703 | AdfTp |SV* |mess_nocontext |NN const char* pat|... | |
704 | AdfTp |void |warn_nocontext |NN const char* pat|... | |
3b4eef1c | 705 | AdfTp |void |warner_nocontext|U32 err|NN const char* pat|... |
3d12c238 KW |
706 | AdfTp |SV* |newSVpvf_nocontext|NN const char *const pat|... |
707 | AdfTp |void |sv_catpvf_nocontext|NN SV *const sv|NN const char *const pat|... | |
708 | AdfTp |void |sv_setpvf_nocontext|NN SV *const sv|NN const char *const pat|... | |
709 | AdfTp |void |sv_catpvf_mg_nocontext|NN SV *const sv|NN const char *const pat|... | |
710 | AdfTp |void |sv_setpvf_mg_nocontext|NN SV *const sv|NN const char *const pat|... | |
57f51a64 KW |
711 | AbfTpD |int |fprintf_nocontext|NN PerlIO *stream|NN const char *format|... |
712 | AbfTpD |int |printf_nocontext|NN const char *format|... | |
94bdecf9 | 713 | #endif |
b8c38f0a | 714 | : Used in pp.c |
c1a02cca | 715 | pd |SV * |core_prototype |NULLOK SV *sv|NN const char *name \ |
b66130dd | 716 | |const int code|NULLOK int * const opnum |
1e4b6aa1 | 717 | : Used in gv.c |
8f939fab | 718 | p |OP * |coresub_op |NN SV *const coreargssv|const int code \ |
1e4b6aa1 | 719 | |const int opnum |
d67fec57 | 720 | : Used in sv.c |
e4aeb12f | 721 | ExXp |void |cv_ckproto_len_flags |NN const CV* cv|NULLOK const GV* gv\ |
dab1c735 BF |
722 | |NULLOK const char* p|const STRLEN len \ |
723 | |const U32 flags | |
67022846 | 724 | : Used in pp.c and pp_sys.c |
62d55b22 | 725 | ApdR |SV* |gv_const_sv |NN GV* gv |
45b29440 KW |
726 | ApdRT |SV* |cv_const_sv |NULLOK const CV *const cv |
727 | pRT |SV* |cv_const_sv_or_av|NULLOK const CV *const cv | |
ecf05a58 | 728 | Apd |SV * |cv_name |NN CV *cv|NULLOK SV *sv|U32 flags |
890ce7af | 729 | Apd |void |cv_undef |NN CV* cv |
b7acb0a3 | 730 | p |void |cv_undef_flags |NN CV* cv|U32 flags |
c1a02cca | 731 | pd |void |cv_forget_slab |NULLOK CV *cv |
890ce7af | 732 | Ap |void |cx_dump |NN PERL_CONTEXT* cx |
45b19fd5 | 733 | AiMpd |GV * |CvGV |NN CV *sv |
74804ad1 | 734 | AiMTp |I32 * |CvDEPTH |NN const CV * const sv |
0f292d69 | 735 | Aphd |SV* |filter_add |NULLOK filter_t funcp|NULLOK SV* datasv |
890ce7af | 736 | Ap |void |filter_del |NN filter_t funcp |
0f292d69 | 737 | ApRhd |I32 |filter_read |int idx|NN SV *buf_sv|int maxlen |
a3b680e6 AL |
738 | ApPR |char** |get_op_descs |
739 | ApPR |char** |get_op_names | |
67022846 | 740 | : FIXME discussion on p5p |
a3b680e6 | 741 | pPR |const char* |get_no_modify |
67022846 | 742 | : FIXME discussion on p5p |
a3b680e6 AL |
743 | pPR |U32* |get_opargs |
744 | ApPR |PPADDR_t*|get_ppaddr | |
d67fec57 | 745 | : Used by CXINC, which appears to be in widespread use |
82151c42 | 746 | ApR |I32 |cxinc |
890ce7af | 747 | Afp |void |deb |NN const char* pat|... |
aec46f14 | 748 | Ap |void |vdeb |NN const char* pat|NULLOK va_list* args |
94bdecf9 | 749 | Ap |void |debprofdump |
dc3c1c70 | 750 | EXp |SV* |multideref_stringify |NN const OP* o|NULLOK CV *cv |
e839e6ed | 751 | EXp |SV* |multiconcat_stringify |NN const OP* o |
4373e329 | 752 | Ap |I32 |debop |NN const OP* o |
94bdecf9 JH |
753 | Ap |I32 |debstack |
754 | Ap |I32 |debstackptrs | |
13733cde | 755 | pR |SV * |defelem_target |NN SV *sv|NULLOK MAGIC *mg |
45b29440 | 756 | ATp |char* |delimcpy |NN char* to|NN const char* toend|NN const char* from \ |
4373e329 | 757 | |NN const char* fromend|int delim|NN I32* retlen |
1df96a41 KW |
758 | Tpd |char* |delimcpy_no_escape|NN char* to|NN const char* toend \ |
759 | |NN const char* from \ | |
760 | |NN const char* fromend|int delim \ | |
ba0a4150 | 761 | |NN I32* retlen |
d67fec57 | 762 | : Used in op.c, perl.c |
e4aeb12f | 763 | px |void |delete_eval_scope |
e950ecba KW |
764 | Aprd |OP* |die_sv |NN SV *baseex |
765 | Afrpd |OP* |die |NULLOK const char* pat|... | |
67022846 | 766 | : Used in util.c |
62705b21 | 767 | pr |void |die_unwind |NN SV* msv |
94bdecf9 | 768 | Ap |void |dounwind |I32 cxix |
67022846 | 769 | : FIXME |
b719801d | 770 | pMb |bool|do_aexec |NULLOK SV* really|NN SV** mark|NN SV** sp |
67022846 | 771 | : Used in pp_sys.c |
738ab09f | 772 | p |bool|do_aexec5 |NULLOK SV* really|NN SV** mark|NN SV** sp|int fd|int do_report |
57f51a64 | 773 | AbpD |int |do_binmode |NN PerlIO *fp|int iotype|int mode |
67022846 | 774 | : Used in pp.c |
063df69c | 775 | Ap |bool |do_close |NULLOK GV* gv|bool not_implicit |
67022846 | 776 | : Defined in doio.c, used only in pp_sys.c |
4373e329 | 777 | p |bool |do_eof |NN GV* gv |
8c654ff2 NC |
778 | |
779 | #ifdef PERL_DEFAULT_DO_EXEC3_IMPLEMENTATION | |
5178f485 | 780 | pM |bool|do_exec |NN const char* cmd |
8c654ff2 | 781 | #else |
738ab09f | 782 | p |bool|do_exec |NN const char* cmd |
8c654ff2 NC |
783 | #endif |
784 | ||
822c8b4d | 785 | #if defined(WIN32) || defined(VMS) |
a3e405b2 | 786 | Ap |int |do_aspawn |NULLOK SV* really|NN SV** mark|NN SV** sp |
890ce7af AL |
787 | Ap |int |do_spawn |NN char* cmd |
788 | Ap |int |do_spawn_nowait|NN char* cmd | |
54725af6 | 789 | #endif |
94bdecf9 | 790 | #if !defined(WIN32) |
738ab09f | 791 | p |bool|do_exec3 |NN const char *incmd|int fd|int do_report |
94bdecf9 | 792 | #endif |
43869a0c | 793 | #if defined(PERL_IN_DOIO_C) |
9f589e47 KW |
794 | S |void |exec_failed |NN const char *cmd|int fd|int do_report |
795 | S |bool |argvout_final |NN MAGIC *mg|NN IO *io|bool not_implicit | |
a0f2c8ec | 796 | #endif |
94bdecf9 | 797 | #if defined(HAS_MSG) || defined(HAS_SEM) || defined(HAS_SHM) |
67022846 | 798 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 799 | p |I32 |do_ipcctl |I32 optype|NN SV** mark|NN SV** sp |
67022846 | 800 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 801 | p |I32 |do_ipcget |I32 optype|NN SV** mark|NN SV** sp |
67022846 | 802 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 803 | p |I32 |do_msgrcv |NN SV** mark|NN SV** sp |
67022846 | 804 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 805 | p |I32 |do_msgsnd |NN SV** mark|NN SV** sp |
67022846 | 806 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 807 | p |I32 |do_semop |NN SV** mark|NN SV** sp |
67022846 | 808 | : Defined in doio.c, used only in pp_sys.c |
7827dc65 | 809 | p |I32 |do_shmio |I32 optype|NN SV** mark|NN SV** sp |
94bdecf9 | 810 | #endif |
4048f010 | 811 | Ap |void |do_join |NN SV *sv|NN SV *delim|NN SV **mark|NN SV **sp |
981b7185 NC |
812 | : Used in pp.c and pp_hot.c, prototype generated by regen/opcode.pl |
813 | : p |OP* |do_kv | |
33efebe6 DM |
814 | : used in pp.c, pp_hot.c |
815 | pR |I32 |do_ncmp |NN SV *const left|NN SV *const right | |
b719801d | 816 | ApMb |bool |do_open |NN GV* gv|NN const char* name|I32 len|int as_raw \ |
890ce7af | 817 | |int rawmode|int rawperm|NULLOK PerlIO* supplied_fp |
57f51a64 | 818 | AbpD |bool |do_open9 |NN GV *gv|NN const char *name|I32 len|int as_raw \ |
890ce7af AL |
819 | |int rawmode|int rawperm|NULLOK PerlIO *supplied_fp \ |
820 | |NN SV *svs|I32 num | |
45b29440 KW |
821 | pT |void |setfd_cloexec|int fd |
822 | pT |void |setfd_inhexec|int fd | |
884fc2d3 | 823 | p |void |setfd_cloexec_for_nonsysfd|int fd |
74df577f | 824 | p |void |setfd_inhexec_for_sysfd|int fd |
884fc2d3 | 825 | p |void |setfd_cloexec_or_inhexec_by_sysfdness|int fd |
f9821aff | 826 | pR |int |PerlLIO_dup_cloexec|int oldfd |
884fc2d3 | 827 | p |int |PerlLIO_dup2_cloexec|int oldfd|int newfd |
f9821aff Z |
828 | pR |int |PerlLIO_open_cloexec|NN const char *file|int flag |
829 | pR |int |PerlLIO_open3_cloexec|NN const char *file|int flag|int perm | |
45b29440 | 830 | pToR |int |my_mkstemp_cloexec|NN char *templte |
ae73d7ec | 831 | pToR |int |my_mkostemp_cloexec|NN char *templte|int flags |
f9821aff Z |
832 | #ifdef HAS_PIPE |
833 | pR |int |PerlProc_pipe_cloexec|NN int *pipefd | |
834 | #endif | |
835 | #ifdef HAS_SOCKET | |
836 | pR |int |PerlSock_socket_cloexec|int domain|int type|int protocol | |
837 | pR |int |PerlSock_accept_cloexec|int listenfd \ | |
838 | |NULLOK struct sockaddr *addr \ | |
839 | |NULLOK Sock_size_t *addrlen | |
840 | #endif | |
841 | #if defined (HAS_SOCKETPAIR) || \ | |
842 | (defined (HAS_SOCKET) && defined(SOCK_DGRAM) && \ | |
843 | defined(AF_INET) && defined(PF_INET)) | |
844 | pR |int |PerlSock_socketpair_cloexec|int domain|int type|int protocol \ | |
845 | |NN int *pairfd | |
846 | #endif | |
a2b41d5c | 847 | #if defined(PERL_IN_DOIO_C) |
9f589e47 | 848 | S |IO * |openn_setup |NN GV *gv|NN char *mode|NN PerlIO **saveifp \ |
a2b41d5c NC |
849 | |NN PerlIO **saveofp|NN int *savefd \ |
850 | |NN char *savetype | |
9f589e47 | 851 | S |bool |openn_cleanup |NN GV *gv|NN IO *io|NULLOK PerlIO *fp \ |
a6fc70e5 NC |
852 | |NN char *mode|NN const char *oname \ |
853 | |NULLOK PerlIO *saveifp|NULLOK PerlIO *saveofp \ | |
854 | |int savefd|char savetype|int writing \ | |
7e30e49f DIM |
855 | |bool was_fdopen|NULLOK const char *type \ |
856 | |NULLOK Stat_t *statbufp | |
a2b41d5c | 857 | #endif |
4048f010 NC |
858 | Ap |bool |do_openn |NN GV *gv|NN const char *oname|I32 len \ |
859 | |int as_raw|int rawmode|int rawperm \ | |
860 | |NULLOK PerlIO *supplied_fp|NULLOK SV **svp \ | |
861 | |I32 num | |
e4aeb12f | 862 | xp |bool |do_open_raw |NN GV *gv|NN const char *oname|STRLEN len \ |
7e30e49f | 863 | |int rawmode|int rawperm|NULLOK Stat_t *statbufp |
e4aeb12f | 864 | xp |bool |do_open6 |NN GV *gv|NN const char *oname|STRLEN len \ |
4b451737 NC |
865 | |NULLOK PerlIO *supplied_fp|NULLOK SV **svp \ |
866 | |U32 num | |
67022846 | 867 | : Used in pp_hot.c and pp_sys.c |
890ce7af | 868 | p |bool |do_print |NULLOK SV* sv|NN PerlIO* fp |
67022846 | 869 | : Used in pp_sys.c |
890ce7af | 870 | pR |OP* |do_readline |
67022846 | 871 | : Defined in doio.c, used only in pp_sys.c |
890ce7af | 872 | p |bool |do_seek |NULLOK GV* gv|Off_t pos|int whence |
03a22d83 | 873 | Ap |void |do_sprintf |NN SV* sv|SSize_t len|NN SV** sarg |
67022846 | 874 | : Defined in doio.c, used only in pp_sys.c |
890ce7af | 875 | p |Off_t |do_sysseek |NN GV* gv|Off_t pos|int whence |
67022846 | 876 | : Defined in doio.c, used only in pp_sys.c |
890ce7af | 877 | pR |Off_t |do_tell |NN GV* gv |
67022846 | 878 | : Defined in doop.c, used only in pp.c |
f0fd0980 | 879 | p |Size_t |do_trans |NN SV* sv |
67022846 | 880 | : Used in my.c and pp.c |
d69c4304 | 881 | p |UV |do_vecget |NN SV* sv|STRLEN offset|int size |
67022846 | 882 | : Defined in doop.c, used only in mg.c (with /* XXX slurp this routine */) |
4373e329 | 883 | p |void |do_vecset |NN SV* sv |
67022846 | 884 | : Defined in doop.c, used only in pp.c |
890ce7af | 885 | p |void |do_vop |I32 optype|NN SV* sv|NN SV* left|NN SV* right |
67022846 | 886 | : Used in perly.y |
850e8516 | 887 | p |OP* |dofile |NN OP* term|I32 force_builtin |
1c23e2bd | 888 | ApR |U8 |dowantarray |
c1a02cca | 889 | Adp |void |dump_all |
f0e3f042 | 890 | p |void |dump_all_perl |bool justperl |
94bdecf9 | 891 | Ap |void |dump_eval |
9a957fbc | 892 | Ap |void |dump_form |NN const GV* gv |
3dc78631 | 893 | Ap |void |gv_dump |NULLOK GV* gv |
1e85b658 | 894 | Apd |OPclass|op_class |NULLOK const OP *o |
c1a02cca | 895 | Apd |void |op_dump |NN const OP *o |
9a957fbc | 896 | Ap |void |pmop_dump |NULLOK PMOP* pm |
c1a02cca | 897 | Apd |void |dump_packsubs |NN const HV* stash |
f0e3f042 | 898 | p |void |dump_packsubs_perl |NN const HV* stash|bool justperl |
f54cb97a | 899 | Ap |void |dump_sub |NN const GV* gv |
f0e3f042 | 900 | p |void |dump_sub_perl |NN const GV* gv|bool justperl |
890ce7af AL |
901 | Apd |void |fbm_compile |NN SV* sv|U32 flags |
902 | ApdR |char* |fbm_instr |NN unsigned char* big|NN unsigned char* bigend \ | |
9f6cc744 | 903 | |NN SV* littlestr|U32 flags |
5e6ebb12 | 904 | pEXTR |const char *|cntrl_to_mnemonic|const U8 c |
9a5e6f3c | 905 | p |CV * |find_lexical_cv|PADOFFSET off |
67022846 | 906 | : Defined in util.c, used only in perl.c |
7827dc65 AL |
907 | p |char* |find_script |NN const char *scriptname|bool dosearch \ |
908 | |NULLOK const char *const *const search_ext|I32 flags | |
43869a0c | 909 | #if defined(PERL_IN_OP_C) |
9f589e47 | 910 | S |OP* |force_list |NULLOK OP* arg|bool nullit |
985b9e54 GG |
911 | i |OP* |op_integerize |NN OP *o |
912 | i |OP* |op_std_init |NN OP *o | |
b46e009d | 913 | #if defined(USE_ITHREADS) |
914 | i |void |op_relocate_sv |NN SV** svp|NN PADOFFSET* targp | |
915 | #endif | |
916 | i |OP* |newMETHOP_internal |I32 type|I32 flags|NULLOK OP* dynamic_meth \ | |
917 | |NULLOK SV* const_meth | |
d67fec57 | 918 | : FIXME |
9f589e47 | 919 | S |OP* |fold_constants |NN OP * const o |
c1a02cca | 920 | Sd |OP* |traverse_op_tree|NN OP* top|NN OP* o |
b7783a12 | 921 | #endif |
aec46f14 | 922 | Afpd |char* |form |NN const char* pat|... |
2385767d | 923 | Adp |char* |vform |NN const char* pat|NULLOK va_list* args |
f34c6d9a | 924 | Cp |void |free_tmps |
43869a0c | 925 | #if defined(PERL_IN_OP_C) |
0f194c83 | 926 | S |void |gen_constant_list|NULLOK OP* o |
0da8eb3a | 927 | #endif |
94bdecf9 | 928 | #if !defined(HAS_GETENV_LEN) |
67022846 | 929 | : Used in hv.c |
9f6cc744 | 930 | p |char* |getenv_len |NN const char *env_elem|NN unsigned long *len |
94bdecf9 | 931 | #endif |
67022846 | 932 | : Used in pp_ctl.c and pp_hot.c |
5af72e99 | 933 | poe |void |get_db_sub |NULLOK SV **svp|NN CV *cv |
46c461b5 AL |
934 | Ap |void |gp_free |NULLOK GV* gv |
935 | Ap |GP* |gp_ref |NULLOK GP* gp | |
13c59d41 | 936 | Ap |GV* |gv_add_by_type |NULLOK GV *gv|svtype type |
b719801d KW |
937 | ApMb |GV* |gv_AVadd |NULLOK GV *gv |
938 | ApMb |GV* |gv_HVadd |NULLOK GV *gv | |
939 | ApMb |GV* |gv_IOadd |NULLOK GV* gv | |
aa1e761e FC |
940 | AmR |GV* |gv_autoload4 |NULLOK HV* stash|NN const char* name \ |
941 | |STRLEN len|I32 method | |
0eeb01b9 | 942 | ApR |GV* |gv_autoload_sv |NULLOK HV* stash|NN SV* namesv|U32 flags |
0fe84f7c | 943 | ApR |GV* |gv_autoload_pv |NULLOK HV* stash|NN const char* namepv \ |
0eeb01b9 | 944 | |U32 flags |
0fe84f7c | 945 | ApR |GV* |gv_autoload_pvn |NULLOK HV* stash|NN const char* name \ |
0eeb01b9 | 946 | |STRLEN len|U32 flags |
51da40ed | 947 | Ap |void |gv_check |NN HV* stash |
57f51a64 | 948 | AbpD |void |gv_efullname |NN SV* sv|NN const GV* gv |
b719801d | 949 | ApMb |void |gv_efullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix |
46c461b5 | 950 | Ap |void |gv_efullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain |
53c1dcc0 | 951 | Ap |GV* |gv_fetchfile |NN const char* name |
d9095cec NC |
952 | Ap |GV* |gv_fetchfile_flags|NN const char *const name|const STRLEN len\ |
953 | |const U32 flags | |
6c53d59b FC |
954 | Amd |GV* |gv_fetchmeth |NULLOK HV* stash|NN const char* name \ |
955 | |STRLEN len|I32 level | |
e6919483 BF |
956 | Apd |GV* |gv_fetchmeth_sv |NULLOK HV* stash|NN SV* namesv|I32 level|U32 flags |
957 | Apd |GV* |gv_fetchmeth_pv |NULLOK HV* stash|NN const char* name \ | |
958 | |I32 level|U32 flags | |
959 | Apd |GV* |gv_fetchmeth_pvn |NULLOK HV* stash|NN const char* name \ | |
960 | |STRLEN len|I32 level|U32 flags | |
460e5730 FC |
961 | Amd |GV* |gv_fetchmeth_autoload |NULLOK HV* stash \ |
962 | |NN const char* name|STRLEN len \ | |
963 | |I32 level | |
d21989ed BF |
964 | Apd |GV* |gv_fetchmeth_sv_autoload |NULLOK HV* stash|NN SV* namesv|I32 level|U32 flags |
965 | Apd |GV* |gv_fetchmeth_pv_autoload |NULLOK HV* stash|NN const char* name \ | |
966 | |I32 level|U32 flags | |
967 | Apd |GV* |gv_fetchmeth_pvn_autoload |NULLOK HV* stash|NN const char* name \ | |
968 | |STRLEN len|I32 level|U32 flags | |
b719801d | 969 | ApdMb |GV* |gv_fetchmethod |NN HV* stash|NN const char* name |
eff494dd NC |
970 | Apd |GV* |gv_fetchmethod_autoload|NN HV* stash|NN const char* name \ |
971 | |I32 autoload | |
e4aeb12f KW |
972 | Apx |GV* |gv_fetchmethod_sv_flags|NN HV* stash|NN SV* namesv|U32 flags |
973 | Apx |GV* |gv_fetchmethod_pv_flags|NN HV* stash|NN const char* name \ | |
dd14162d | 974 | |U32 flags |
e4aeb12f | 975 | Apx |GV* |gv_fetchmethod_pvn_flags|NN HV* stash|NN const char* name \ |
c60dbbc3 | 976 | |const STRLEN len|U32 flags |
84ca0d82 | 977 | Adp |GV* |gv_fetchpv |NN const char *nambeg|I32 flags|const svtype sv_type |
57f51a64 | 978 | AbpD |void |gv_fullname |NN SV* sv|NN const GV* gv |
b719801d | 979 | ApMb |void |gv_fullname3 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix |
9a957fbc | 980 | Ap |void |gv_fullname4 |NN SV* sv|NN const GV* gv|NULLOK const char* prefix|bool keepmain |
d67fec57 | 981 | : Used in scope.c |
e4aeb12f | 982 | pxoe |GP * |newGP |NN GV *const gv |
803f2748 | 983 | pX |void |cvgv_set |NN CV* cv|NULLOK GV* gv |
ae77754a | 984 | poX |GV * |cvgv_from_hek |NN CV* cv |
c68d9564 | 985 | pX |void |cvstash_set |NN CV* cv|NULLOK HV* stash |
e1104062 FC |
986 | Amd |void |gv_init |NN GV* gv|NULLOK HV* stash \ |
987 | |NN const char* name|STRLEN len|int multi | |
c1a02cca KW |
988 | Apd |void |gv_init_sv |NN GV* gv|NULLOK HV* stash|NN SV* namesv|U32 flags |
989 | Apd |void |gv_init_pv |NN GV* gv|NULLOK HV* stash|NN const char* name \ | |
04ec7e59 | 990 | |U32 flags |
c1a02cca | 991 | Apd |void |gv_init_pvn |NN GV* gv|NULLOK HV* stash|NN const char* name \ |
04ec7e59 | 992 | |STRLEN len|U32 flags |
9f616d01 | 993 | Ap |void |gv_name_set |NN GV* gv|NN const char *name|U32 len|U32 flags |
5af72e99 | 994 | pe |GV * |gv_override |NN const char * const name \ |
9e3fb20c | 995 | |const STRLEN len |
e4aeb12f | 996 | Xxpd |void |gv_try_downgrade|NN GV* gv |
d8a875d9 | 997 | p |void |gv_setref |NN SV *const dstr|NN SV *const sstr |
da51bb9b NC |
998 | Apd |HV* |gv_stashpv |NN const char* name|I32 flags |
999 | Apd |HV* |gv_stashpvn |NN const char* name|U32 namelen|I32 flags | |
c4b6b96d SA |
1000 | #if defined(PERL_IN_GV_C) || defined(PERL_IN_UNIVERSAL_C) |
1001 | EpG |HV* |gv_stashsvpvn_cached |NULLOK SV *namesv|NULLOK const char* name|U32 namelen|I32 flags | |
1002 | #endif | |
0eadbdad | 1003 | #if defined(PERL_IN_GV_C) |
c6afe666 | 1004 | i |HV* |gv_stashpvn_internal |NN const char* name|U32 namelen|I32 flags |
c6afe666 | 1005 | i |GV* |gv_fetchmeth_internal |NULLOK HV* stash|NULLOK SV* meth|NULLOK const char* name \ |
1006 | |STRLEN len|I32 level|U32 flags | |
0eadbdad | 1007 | #endif |
8798655d | 1008 | Apd |HV* |gv_stashsv |NN SV* sv|I32 flags |
4048f010 | 1009 | Apd |void |hv_clear |NULLOK HV *hv |
67022846 | 1010 | : used in SAVEHINTS() and op.c |
defdfed5 | 1011 | ApdR |HV * |hv_copy_hints_hv|NULLOK HV *const ohv |
4048f010 | 1012 | Ap |void |hv_delayfree_ent|NN HV *hv|NULLOK HE *entry |
b719801d | 1013 | AbMdp |SV* |hv_delete |NULLOK HV *hv|NN const char *key|I32 klen \ |
a038e571 | 1014 | |I32 flags |
b719801d KW |
1015 | AbMdp |SV* |hv_delete_ent |NULLOK HV *hv|NN SV *keysv|I32 flags|U32 hash |
1016 | AbMdRp |bool |hv_exists |NULLOK HV *hv|NN const char *key|I32 klen | |
1017 | AbMdRp |bool |hv_exists_ent |NULLOK HV *hv|NN SV *keysv|U32 hash | |
1018 | AbMdp |SV** |hv_fetch |NULLOK HV *hv|NN const char *key|I32 klen \ | |
a038e571 | 1019 | |I32 lval |
b719801d | 1020 | AbMdp |HE* |hv_fetch_ent |NULLOK HV *hv|NN SV *keysv|I32 lval|U32 hash |
75058825 | 1021 | Cp |void* |hv_common |NULLOK HV *hv|NULLOK SV *keysv \ |
d3ba3f5c | 1022 | |NULLOK const char* key|STRLEN klen|int flags \ |
4048f010 | 1023 | |int action|NULLOK SV *val|U32 hash |
75058825 | 1024 | Cp |void* |hv_common_key_len|NULLOK HV *hv|NN const char *key \ |
a038e571 NC |
1025 | |I32 klen_i32|const int action|NULLOK SV *val \ |
1026 | |const U32 hash | |
632239c3 | 1027 | Apod |STRLEN |hv_fill |NN HV *const hv |
c77ce6f1 | 1028 | Ap |void |hv_free_ent |NN HV *hv|NULLOK HE *entry |
4048f010 | 1029 | Apd |I32 |hv_iterinit |NN HV *hv |
a3b680e6 AL |
1030 | ApdR |char* |hv_iterkey |NN HE* entry|NN I32* retlen |
1031 | ApdR |SV* |hv_iterkeysv |NN HE* entry | |
b719801d | 1032 | ApdRbM |HE* |hv_iternext |NN HV *hv |
4048f010 | 1033 | ApdR |SV* |hv_iternextsv |NN HV *hv|NN char **key|NN I32 *retlen |
e4aeb12f | 1034 | ApxdR |HE* |hv_iternext_flags|NN HV *hv|I32 flags |
4048f010 NC |
1035 | ApdR |SV* |hv_iterval |NN HV *hv|NN HE *entry |
1036 | Ap |void |hv_ksplit |NN HV *hv|IV newmax | |
b719801d | 1037 | ApdbM |void |hv_magic |NN HV *hv|NULLOK GV *gv|int how |
43869a0c | 1038 | #if defined(PERL_IN_HV_C) |
9f589e47 | 1039 | S |SV * |refcounted_he_value |NN const struct refcounted_he *he |
012da8e5 | 1040 | #endif |
20439bc7 Z |
1041 | Xpd |HV * |refcounted_he_chain_2hv|NULLOK const struct refcounted_he *c|U32 flags |
1042 | Xpd |SV * |refcounted_he_fetch_pvn|NULLOK const struct refcounted_he *chain \ | |
1043 | |NN const char *keypv|STRLEN keylen|U32 hash|U32 flags | |
1044 | Xpd |SV * |refcounted_he_fetch_pv|NULLOK const struct refcounted_he *chain \ | |
1045 | |NN const char *key|U32 hash|U32 flags | |
1046 | Xpd |SV * |refcounted_he_fetch_sv|NULLOK const struct refcounted_he *chain \ | |
1047 | |NN SV *key|U32 hash|U32 flags | |
1048 | Xpd |struct refcounted_he *|refcounted_he_new_pvn \ | |
1049 | |NULLOK struct refcounted_he *parent \ | |
1050 | |NN const char *keypv|STRLEN keylen \ | |
1051 | |U32 hash|NULLOK SV *value|U32 flags | |
1052 | Xpd |struct refcounted_he *|refcounted_he_new_pv \ | |
1053 | |NULLOK struct refcounted_he *parent \ | |
1054 | |NN const char *key \ | |
1055 | |U32 hash|NULLOK SV *value|U32 flags | |
1056 | Xpd |struct refcounted_he *|refcounted_he_new_sv \ | |
1057 | |NULLOK struct refcounted_he *parent \ | |
1058 | |NN SV *key \ | |
1059 | |U32 hash|NULLOK SV *value|U32 flags | |
1060 | Xpd |void |refcounted_he_free|NULLOK struct refcounted_he *he | |
1061 | Xpd |struct refcounted_he *|refcounted_he_inc|NULLOK struct refcounted_he *he | |
b719801d | 1062 | ApbMd |SV** |hv_store |NULLOK HV *hv|NULLOK const char *key \ |
4048f010 | 1063 | |I32 klen|NULLOK SV *val|U32 hash |
b719801d | 1064 | ApbMd |HE* |hv_store_ent |NULLOK HV *hv|NULLOK SV *key|NULLOK SV *val\ |
4048f010 | 1065 | |U32 hash |
b719801d | 1066 | ApbMx |SV** |hv_store_flags |NULLOK HV *hv|NULLOK const char *key \ |
4048f010 | 1067 | |I32 klen|NULLOK SV *val|U32 hash|int flags |
8581adba FC |
1068 | Amd |void |hv_undef |NULLOK HV *hv |
1069 | poX |void |hv_undef_flags |NULLOK HV *hv|U32 flags | |
c1a02cca | 1070 | AdmP |I32 |ibcmp |NN const char* a|NN const char* b|I32 len |
c8abed4a | 1071 | AdiTp |I32 |foldEQ |NN const char* a|NN const char* b|I32 len |
c1a02cca KW |
1072 | AdmP |I32 |ibcmp_locale |NN const char* a|NN const char* b|I32 len |
1073 | AiTpd |I32 |foldEQ_locale |NN const char* a|NN const char* b|I32 len | |
1c4bbd05 | 1074 | Adm |I32 |ibcmp_utf8 |NN const char *s1|NULLOK char **pe1|UV l1 \ |
e6226b18 KW |
1075 | |bool u1|NN const char *s2|NULLOK char **pe2 \ |
1076 | |UV l2|bool u2 | |
eda9cac1 | 1077 | Amd |I32 |foldEQ_utf8 |NN const char *s1|NULLOK char **pe1|UV l1 \ |
4048f010 NC |
1078 | |bool u1|NN const char *s2|NULLOK char **pe2 \ |
1079 | |UV l2|bool u2 | |
09232555 | 1080 | Cp |I32 |foldEQ_utf8_flags |NN const char *s1|NULLOK char **pe1|UV l1 \ |
eda9cac1 KW |
1081 | |bool u1|NN const char *s2|NULLOK char **pe2 \ |
1082 | |UV l2|bool u2|U32 flags | |
0b8c4b85 | 1083 | CiTp |I32 |foldEQ_latin1 |NN const char* a|NN const char* b|I32 len |
43869a0c | 1084 | #if defined(PERL_IN_DOIO_C) |
9f589e47 | 1085 | SR |bool |ingroup |Gid_t testgid|bool effective |
0da8eb3a | 1086 | #endif |
67022846 | 1087 | : Used in toke.c |
4373e329 | 1088 | p |void |init_argv_symbols|int argc|NN char **argv |
8af6f985 NC |
1089 | : Used in pp_ctl.c |
1090 | po |void |init_dbargs | |
67022846 | 1091 | : Used in mg.c |
94bdecf9 JH |
1092 | p |void |init_debugger |
1093 | Ap |void |init_stacks | |
bfce84ec | 1094 | Ap |void |init_tm |NN struct tm *ptm |
67022846 | 1095 | : Used in perly.y |
fa39cb42 | 1096 | AbMTpPRd|char* |instr |NN const char* big|NN const char* little |
67022846 | 1097 | : Used in sv.c |
96d7c888 FC |
1098 | p |bool |io_close |NN IO* io|NULLOK GV *gv \ |
1099 | |bool not_implicit|bool warn_on_fail | |
67022846 | 1100 | : Used in perly.y |
2d03de9c | 1101 | pR |OP* |invert |NULLOK OP* cmd |
6b32f57d | 1102 | pR |OP* |cmpchain_start |I32 type|NULLOK OP* left \ |
02b85d3d | 1103 | |NULLOK OP* right |
6b32f57d | 1104 | pR |OP* |cmpchain_extend|I32 type|NN OP* ch|NULLOK OP* right |
02b85d3d | 1105 | pR |OP* |cmpchain_finish|NN OP* ch |
f54cb97a | 1106 | ApR |I32 |is_lvalue_sub |
777d9014 | 1107 | : Used in cop.h |
eebd3bc0 | 1108 | XopR |I32 |was_lvalue_sub |
1376b35c | 1109 | CpRTP |STRLEN |is_utf8_char_helper|NN const U8 * const s|NN const U8 * e|const U32 flags |
09232555 KW |
1110 | Cp |UV |to_uni_upper |UV c|NN U8 *p|NN STRLEN *lenp |
1111 | Cp |UV |to_uni_title |UV c|NN U8 *p|NN STRLEN *lenp | |
95e064d9 | 1112 | p |void |init_uniprops |
afc16117 | 1113 | #ifdef PERL_IN_UTF8_C |
9f589e47 | 1114 | STR |U8 |to_lower_latin1|const U8 c|NULLOK U8 *p|NULLOK STRLEN *lenp \ |
eaf412bf | 1115 | |const char dummy |
57ff5f59 | 1116 | # ifndef UV_IS_QUAD |
9f589e47 | 1117 | STR |int |is_utf8_cp_above_31_bits|NN const U8 * const s \ |
e050c007 KW |
1118 | |NN const U8 * const e \ |
1119 | |const bool consider_overlongs | |
57ff5f59 | 1120 | # endif |
fab2782b | 1121 | #endif |
348bf2e0 KW |
1122 | #if defined(PERL_IN_UTF8_C) || defined(PERL_IN_PP_C) |
1123 | p |UV |_to_upper_title_latin1|const U8 c|NN U8 *p|NN STRLEN *lenp|const char S_or_s | |
1124 | #endif | |
09232555 | 1125 | Cp |UV |to_uni_lower |UV c|NN U8 *p|NN STRLEN *lenp |
5178f485 | 1126 | Cm |UV |to_uni_fold |UV c|NN U8 *p|NN STRLEN *lenp |
09232555 | 1127 | Cp |UV |_to_uni_fold_flags|UV c|NN U8 *p|NN STRLEN *lenp|U8 flags |
09232555 KW |
1128 | CpR |bool |_is_uni_perl_idcont|UV c |
1129 | CpR |bool |_is_uni_perl_idstart|UV c | |
45b29440 | 1130 | ATdmoR |bool |is_utf8_invariant_string|NN const U8* const s \ |
e17544a6 | 1131 | |STRLEN len |
c9182d9c | 1132 | ATidRp |bool |is_utf8_invariant_string_loc|NN const U8* const s \ |
e17544a6 | 1133 | |STRLEN len \ |
0cbf5865 | 1134 | |NULLOK const U8 ** ep |
23a7ee81 | 1135 | #ifndef EBCDIC |
73f0a2eb | 1136 | CTiRp |unsigned int|variant_byte_number|PERL_UINTMAX_T word |
23a7ee81 | 1137 | #endif |
03c1e4ab | 1138 | #if defined(PERL_CORE) || defined(PERL_EXT) |
c1a02cca | 1139 | EiTRd |Size_t |variant_under_utf8_count|NN const U8* const s \ |
03c1e4ab KW |
1140 | |NN const U8* const e |
1141 | #endif | |
ef9e3b4d KW |
1142 | AmTdRP |bool |is_ascii_string|NN const U8* const s|STRLEN len |
1143 | AmTdRP |bool |is_invariant_string|NN const U8* const s|STRLEN len | |
c9cd936b | 1144 | #if defined(PERL_CORE) || defined (PERL_EXT) |
86a87e17 | 1145 | EXTidRp |bool |is_utf8_non_invariant_string|NN const U8* const s \ |
c9cd936b KW |
1146 | |STRLEN len |
1147 | #endif | |
45b29440 | 1148 | AbTpdD |STRLEN |is_utf8_char |NN const U8 *s |
b719801d | 1149 | AbMTpd |STRLEN |is_utf8_char_buf|NN const U8 *buf|NN const U8 *buf_end |
c9182d9c | 1150 | ATidRp |Size_t |isUTF8_CHAR|NN const U8 * const s0 \ |
8ed185f9 | 1151 | |NN const U8 * const e |
c9182d9c | 1152 | ATidRp |Size_t |isSTRICT_UTF8_CHAR |NN const U8 * const s0 \ |
67049a5f | 1153 | |NN const U8 * const e |
c9182d9c | 1154 | ATidRp |Size_t |isC9_STRICT_UTF8_CHAR |NN const U8 * const s0 \ |
c5bfbb64 | 1155 | |NN const U8 * const e |
ef9e3b4d | 1156 | ATmdR |bool |is_utf8_string |NN const U8 *s|STRLEN len |
c9182d9c | 1157 | ATidRp |bool |is_utf8_string_flags \ |
f60f61fd | 1158 | |NN const U8 *s|STRLEN len|const U32 flags |
ef9e3b4d KW |
1159 | ATmdR |bool |is_strict_utf8_string|NN const U8 *s|STRLEN len |
1160 | ATmdR |bool |is_c9strict_utf8_string|NN const U8 *s|STRLEN len | |
b719801d | 1161 | ATpdMb |bool |is_utf8_string_loc \ |
0dc258e2 | 1162 | |NN const U8 *s|const STRLEN len|NN const U8 **ep |
45b29440 | 1163 | ATdm |bool |is_utf8_string_loc_flags \ |
f60f61fd | 1164 | |NN const U8 *s|STRLEN len|NN const U8 **ep \ |
9f2abfde | 1165 | |const U32 flags |
45b29440 | 1166 | ATdm |bool |is_strict_utf8_string_loc \ |
33756530 | 1167 | |NN const U8 *s|STRLEN len|NN const U8 **ep |
45b29440 | 1168 | ATdm |bool |is_c9strict_utf8_string_loc \ |
33756530 | 1169 | |NN const U8 *s|STRLEN len|NN const U8 **ep |
45b29440 | 1170 | ATipd |bool |is_utf8_string_loclen \ |
f60f61fd | 1171 | |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \ |
9f2abfde | 1172 | |NULLOK STRLEN *el |
c9182d9c | 1173 | ATidp |bool |is_utf8_string_loclen_flags \ |
f60f61fd | 1174 | |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \ |
9f2abfde | 1175 | |NULLOK STRLEN *el|const U32 flags |
c9182d9c | 1176 | ATidp |bool |is_strict_utf8_string_loclen \ |
33756530 | 1177 | |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \ |
9f2abfde | 1178 | |NULLOK STRLEN *el |
c9182d9c | 1179 | ATidp |bool |is_c9strict_utf8_string_loclen \ |
33756530 | 1180 | |NN const U8 *s|STRLEN len|NULLOK const U8 **ep \ |
9f2abfde | 1181 | |NULLOK STRLEN *el |
45b29440 | 1182 | AmTd |bool |is_utf8_fixed_width_buf_flags \ |
33756530 | 1183 | |NN const U8 * const s|STRLEN len|const U32 flags |
45b29440 | 1184 | AmTd |bool |is_utf8_fixed_width_buf_loc_flags \ |
33756530 | 1185 | |NN const U8 * const s|STRLEN len \ |
8bc127bf | 1186 | |NULLOK const U8 **ep|const U32 flags |
c9182d9c | 1187 | ATidp |bool |is_utf8_fixed_width_buf_loclen_flags \ |
33756530 | 1188 | |NN const U8 * const s|STRLEN len \ |
8bc127bf | 1189 | |NULLOK const U8 **ep|NULLOK STRLEN *el|const U32 flags |
45b29440 | 1190 | AmTdP |bool |is_utf8_valid_partial_char \ |
f1c999a7 | 1191 | |NN const U8 * const s|NN const U8 * const e |
c9182d9c | 1192 | ATidRp |bool |is_utf8_valid_partial_char_flags \ |
f1c999a7 | 1193 | |NN const U8 * const s|NN const U8 * const e|const U32 flags |
dd1a3ba7 KW |
1194 | CpR |bool |_is_uni_FOO|const U8 classnum|const UV c |
1195 | CpR |bool |_is_utf8_FOO|const U8 classnum|NN const U8 *p \ | |
da8c1a98 | 1196 | |NN const U8 * const e |
dd1a3ba7 KW |
1197 | CpR |bool |_is_utf8_perl_idcont|NN const U8 *p|NN const U8 * const e |
1198 | CpR |bool |_is_utf8_perl_idstart|NN const U8 *p|NN const U8 * const e | |
1199 | ||
be9bef63 KW |
1200 | #if defined(PERL_CORE) || defined(PERL_EXT) |
1201 | EXdpR |bool |isSCRIPT_RUN |NN const U8 *s|NN const U8 *send \ | |
49cd0726 | 1202 | |const bool utf8_target |
be9bef63 | 1203 | #endif |
67022846 | 1204 | : Used in perly.y |
4048f010 | 1205 | p |OP* |jmaybe |NN OP *o |
dd14162d | 1206 | : Used in pp.c |
4048f010 | 1207 | pP |I32 |keyword |NN const char *name|I32 len|bool all_keywords |
43869a0c | 1208 | #if defined(PERL_IN_OP_C) |
9f589e47 | 1209 | S |void |inplace_aassign |NN OP* o |
867fa1e2 | 1210 | #endif |
94bdecf9 | 1211 | Ap |void |leave_scope |I32 base |
efa571ab | 1212 | p |void |notify_parser_that_changed_to_utf8 |
f0e67a1d | 1213 | : Public lexer API |
e4aeb12f KW |
1214 | Axpd |void |lex_start |NULLOK SV* line|NULLOK PerlIO *rsfp|U32 flags |
1215 | Axpd |bool |lex_bufutf8 | |
1216 | Axpd |char* |lex_grow_linestr|STRLEN len | |
1217 | Axpd |void |lex_stuff_pvn |NN const char* pv|STRLEN len|U32 flags | |
1218 | Axpd |void |lex_stuff_pv |NN const char* pv|U32 flags | |
1219 | Axpd |void |lex_stuff_sv |NN SV* sv|U32 flags | |
1220 | Axpd |void |lex_unstuff |NN char* ptr | |
1221 | Axpd |void |lex_read_to |NN char* ptr | |
1222 | Axpd |void |lex_discard_to |NN char* ptr | |
1223 | Axpd |bool |lex_next_chunk |U32 flags | |
1224 | Axpd |I32 |lex_peek_unichar|U32 flags | |
1225 | Axpd |I32 |lex_read_unichar|U32 flags | |
1226 | Axpd |void |lex_read_space |U32 flags | |
28ac2b49 | 1227 | : Public parser API |
e4aeb12f KW |
1228 | Axpd |OP* |parse_arithexpr|U32 flags |
1229 | Axpd |OP* |parse_termexpr |U32 flags | |
1230 | Axpd |OP* |parse_listexpr |U32 flags | |
1231 | Axpd |OP* |parse_fullexpr |U32 flags | |
1232 | Axpd |OP* |parse_block |U32 flags | |
1233 | Axpd |OP* |parse_barestmt |U32 flags | |
1234 | Axpd |SV* |parse_label |U32 flags | |
1235 | Axpd |OP* |parse_fullstmt |U32 flags | |
1236 | Axpd |OP* |parse_stmtseq |U32 flags | |
996b0cb8 | 1237 | Axpd |OP* |parse_subsignature|U32 flags |
f0e67a1d | 1238 | : Used in various files |
1d70cb64 | 1239 | Apd |void |op_null |NN OP* o |
d67fec57 | 1240 | : FIXME. Used by Data::Alias |
6d9a2efc | 1241 | EXp |void |op_clear |NN OP* o |
4026c95a SH |
1242 | Ap |void |op_refcnt_lock |
1243 | Ap |void |op_refcnt_unlock | |
45b29440 | 1244 | ApdT |OP* |op_sibling_splice|NULLOK OP *parent|NULLOK OP *start \ |
3253bf85 | 1245 | |int del_count|NULLOK OP* insert |
45b29440 | 1246 | ApdT |OP* |op_parent|NN OP *o |
43869a0c | 1247 | #if defined(PERL_IN_OP_C) |
9f589e47 | 1248 | S |OP* |listkids |NULLOK OP* o |
2dd5337b | 1249 | #endif |
aec46f14 | 1250 | p |OP* |list |NULLOK OP* o |
29f5f37e | 1251 | AFpd |void |load_module|U32 flags|NN SV* name|NULLOK SV* ver|... |
182a4e9e | 1252 | Adp |void |vload_module|U32 flags|NN SV* name|NULLOK SV* ver|NULLOK va_list* args |
67022846 | 1253 | : Used in perly.y |
4048f010 | 1254 | p |OP* |localize |NN OP *o|I32 lex |
aad570aa | 1255 | ApdR |I32 |looks_like_number|NN SV *const sv |
bcfb98ec | 1256 | AMpd |UV |grok_hex |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result |
3823048b | 1257 | Apd |int |grok_infnan |NN const char** sp|NN const char *send |
7827dc65 | 1258 | Apd |int |grok_number |NN const char *pv|STRLEN len|NULLOK UV *valuep |
3f7602fa | 1259 | Apd |int |grok_number_flags|NN const char *pv|STRLEN len|NULLOK UV *valuep|U32 flags |
bfce84ec | 1260 | ApdR |bool |grok_numeric_radix|NN const char **sp|NN const char *send |
bcfb98ec KW |
1261 | ApMd |UV |grok_oct |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result |
1262 | ApMd |UV |grok_bin |NN const char* start|NN STRLEN* len_p|NN I32* flags|NULLOK NV *result | |
af8bca27 | 1263 | Cp |UV |grok_bin_oct_hex|NN const char* start \ |
bcfb98ec KW |
1264 | |NN STRLEN* len_p \ |
1265 | |NN I32* flags \ | |
1266 | |NULLOK NV *result \ | |
c969ff22 KW |
1267 | |const unsigned shift \ |
1268 | |const U8 lookup_bit \ | |
1269 | |const char prefix | |
1270 | #ifdef PERL_IN_NUMERIC_C | |
1271 | S |void |output_non_portable|const U8 shift | |
1272 | #endif | |
c1a02cca | 1273 | EXpdT |bool |grok_atoUV |NN const char* pv|NN UV* valptr|NULLOK const char** endptr |
67022846 | 1274 | : These are all indirectly referenced by globals.c. This is somewhat annoying. |
bfce84ec AL |
1275 | p |int |magic_clearenv |NN SV* sv|NN MAGIC* mg |
1276 | p |int |magic_clear_all_env|NN SV* sv|NN MAGIC* mg | |
b3ca2e83 | 1277 | dp |int |magic_clearhint|NN SV* sv|NN MAGIC* mg |
f747ebd6 | 1278 | dp |int |magic_clearhints|NN SV* sv|NN MAGIC* mg |
0e446081 | 1279 | p |int |magic_clearisa |NULLOK SV* sv|NN MAGIC* mg |
bfce84ec AL |
1280 | p |int |magic_clearpack|NN SV* sv|NN MAGIC* mg |
1281 | p |int |magic_clearsig |NN SV* sv|NN MAGIC* mg | |
09fb282d FC |
1282 | p |int |magic_copycallchecker|NN SV* sv|NN MAGIC *mg|NN SV *nsv \ |
1283 | |NULLOK const char *name|I32 namlen | |
1146e912 | 1284 | p |int |magic_existspack|NN SV* sv|NN const MAGIC* mg |
bfce84ec AL |
1285 | p |int |magic_freeovrld|NN SV* sv|NN MAGIC* mg |
1286 | p |int |magic_get |NN SV* sv|NN MAGIC* mg | |
8772537c | 1287 | p |int |magic_getarylen|NN SV* sv|NN const MAGIC* mg |
bfce84ec | 1288 | p |int |magic_getdefelem|NN SV* sv|NN MAGIC* mg |
a6d69523 | 1289 | p |int |magic_getdebugvar|NN SV* sv|NN MAGIC* mg |
bfce84ec AL |
1290 | p |int |magic_getnkeys |NN SV* sv|NN MAGIC* mg |
1291 | p |int |magic_getpack |NN SV* sv|NN MAGIC* mg | |
1292 | p |int |magic_getpos |NN SV* sv|NN MAGIC* mg | |
1293 | p |int |magic_getsig |NN SV* sv|NN MAGIC* mg | |
1294 | p |int |magic_getsubstr|NN SV* sv|NN MAGIC* mg | |
1295 | p |int |magic_gettaint |NN SV* sv|NN MAGIC* mg | |
1296 | p |int |magic_getuvar |NN SV* sv|NN MAGIC* mg | |
1297 | p |int |magic_getvec |NN SV* sv|NN MAGIC* mg | |
4048f010 | 1298 | p |int |magic_nextpack |NN SV *sv|NN MAGIC *mg|NN SV *key |
bfce84ec AL |
1299 | p |U32 |magic_regdata_cnt|NN SV* sv|NN MAGIC* mg |
1300 | p |int |magic_regdatum_get|NN SV* sv|NN MAGIC* mg | |
73758d77 | 1301 | :removing noreturn to silence a warning for this function resulted in no |
f8d5a522 DD |
1302 | :change to the interpreter DLL image under VS 2003 -O1 -GL 32 bits only because |
1303 | :this is used in a magic vtable, do not use this on conventionally called funcs | |
518a5310 SH |
1304 | #ifdef _MSC_VER |
1305 | p |int |magic_regdatum_set|NN SV* sv|NN MAGIC* mg | |
1306 | #else | |
bfce84ec | 1307 | pr |int |magic_regdatum_set|NN SV* sv|NN MAGIC* mg |
518a5310 | 1308 | #endif |
bfce84ec | 1309 | p |int |magic_set |NN SV* sv|NN MAGIC* mg |
bfce84ec | 1310 | p |int |magic_setarylen|NN SV* sv|NN MAGIC* mg |
83f29afa | 1311 | p |int |magic_cleararylen_p|NN SV* sv|NN MAGIC* mg |
bfce84ec | 1312 | p |int |magic_freearylen_p|NN SV* sv|NN MAGIC* mg |
bfce84ec | 1313 | p |int |magic_setdbline|NN SV* sv|NN MAGIC* mg |
a6d69523 | 1314 | p |int |magic_setdebugvar|NN SV* sv|NN MAGIC* mg |
bfce84ec | 1315 | p |int |magic_setdefelem|NN SV* sv|NN MAGIC* mg |
1f1dcfb5 | 1316 | p |int |magic_setnonelem|NN SV* sv|NN MAGIC* mg |
bfce84ec | 1317 | p |int |magic_setenv |NN SV* sv|NN MAGIC* mg |
b3ca2e83 | 1318 | dp |int |magic_sethint |NN SV* sv|NN MAGIC* mg |
bfce84ec | 1319 | p |int |magic_setisa |NN SV* sv|NN MAGIC* mg |
9cce4f9a | 1320 | p |int |magic_setlvref |NN SV* sv|NN MAGIC* mg |
bfce84ec | 1321 | p |int |magic_setmglob |NN SV* sv|NN MAGIC* mg |
02a48966 | 1322 | p |int |magic_freemglob|NN SV* sv|NN MAGIC* mg |
bfce84ec AL |
1323 | p |int |magic_setnkeys |NN SV* sv|NN MAGIC* mg |
1324 | p |int |magic_setpack |NN SV* sv|NN MAGIC* mg | |
1325 | p |int |magic_setpos |NN SV* sv|NN MAGIC* mg | |
1326 | p |int |magic_setregexp|NN SV* sv|NN MAGIC* mg | |
38a124f0 | 1327 | p |int |magic_setsig |NULLOK SV* sv|NN MAGIC* mg |
bfce84ec AL |
1328 | p |int |magic_setsubstr|NN SV* sv|NN MAGIC* mg |
1329 | p |int |magic_settaint |NN SV* sv|NN MAGIC* mg | |
1330 | p |int |magic_setuvar |NN SV* sv|NN MAGIC* mg | |
1331 | p |int |magic_setvec |NN SV* sv|NN MAGIC* mg | |
1332 | p |int |magic_setutf8 |NN SV* sv|NN MAGIC* mg | |
032a4919 | 1333 | p |int |magic_freeutf8 |NN SV* sv|NN MAGIC* mg |
bfce84ec AL |
1334 | p |int |magic_set_all_env|NN SV* sv|NN MAGIC* mg |
1335 | p |U32 |magic_sizepack |NN SV* sv|NN MAGIC* mg | |
1336 | p |int |magic_wipepack |NN SV* sv|NN MAGIC* mg | |
29f5f37e | 1337 | Fpod |SV* |magic_methcall |NN SV *sv|NN const MAGIC *mg \ |
36925d9e | 1338 | |NN SV *meth|U32 flags \ |
046b0c7d | 1339 | |U32 argc|... |
ba5248fc | 1340 | Ap |I32 * |markstack_grow |
94bdecf9 | 1341 | #if defined(USE_LOCALE_COLLATE) |
b22e6366 | 1342 | p |int |magic_setcollxfrm|NN SV* sv|NN MAGIC* mg |
a457b73c | 1343 | p |int |magic_freecollxfrm|NN SV* sv|NN MAGIC* mg |
57f51a64 | 1344 | pbD |char* |mem_collxfrm |NN const char* input_string|STRLEN len|NN STRLEN* xlen |
67022846 | 1345 | : Defined in locale.c, used only in sv.c |
78d57975 | 1346 | # if defined(PERL_IN_LOCALE_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_MATHOMS_C) |
09232555 | 1347 | p |char* |_mem_collxfrm |NN const char* input_string \ |
a4a439fb KW |
1348 | |STRLEN len \ |
1349 | |NN STRLEN* xlen \ | |
1350 | |bool utf8 | |
1351 | # endif | |
94bdecf9 | 1352 | #endif |
c5df3096 Z |
1353 | Afpd |SV* |mess |NN const char* pat|... |
1354 | Apd |SV* |mess_sv |NN SV* basemsg|bool consume | |
1355 | Apd |SV* |vmess |NN const char* pat|NULLOK va_list* args | |
d67fec57 NC |
1356 | : FIXME - either make it public, or stop exporting it. (Data::Alias uses this) |
1357 | : Used in gv.c, op.c, toke.c | |
6d9a2efc | 1358 | EXp |void |qerror |NN SV* err |
3d4dd4c7 NC |
1359 | Apd |void |sortsv |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t cmp |
1360 | Apd |void |sortsv_flags |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t cmp|U32 flags | |
9a957fbc | 1361 | Apd |int |mg_clear |NN SV* sv |
4048f010 NC |
1362 | Apd |int |mg_copy |NN SV *sv|NN SV *nsv|NULLOK const char *key \ |
1363 | |I32 klen | |
67022846 | 1364 | : Defined in mg.c, used only in scope.c |
af7df257 | 1365 | pd |void |mg_localize |NN SV* sv|NN SV* nsv|bool setmagic |
658db622 | 1366 | Apd |SV* |sv_string_from_errnum|int errnum|NULLOK SV* tgtsv |
45b29440 KW |
1367 | ApdRT |MAGIC* |mg_find |NULLOK const SV* sv|int type |
1368 | ApdRT |MAGIC* |mg_findext |NULLOK const SV* sv|int type|NULLOK const MGVTBL *vtbl | |
96c2a8ff | 1369 | : exported for re.pm |
d4431b89 | 1370 | EXpR |MAGIC* |mg_find_mglob |NN SV* sv |
9a957fbc | 1371 | Apd |int |mg_free |NN SV* sv |
d9088386 | 1372 | Apd |void |mg_free_type |NN SV* sv|int how |
e0d4aead | 1373 | Apd |void |mg_freeext |NN SV* sv|int how|NULLOK const MGVTBL *vtbl |
9a957fbc | 1374 | Apd |int |mg_get |NN SV* sv |
bd8446cf | 1375 | ApdD |U32 |mg_length |NN SV* sv |
45b29440 | 1376 | ApdT |void |mg_magical |NN SV* sv |
9a957fbc AL |
1377 | Apd |int |mg_set |NN SV* sv |
1378 | Ap |I32 |mg_size |NN SV* sv | |
59e77c34 | 1379 | AdpT |void |mini_mktime |NN struct tm *ptm |
e4aeb12f | 1380 | Axmd |OP* |op_lvalue |NULLOK OP* o|I32 type |
d3d7d28f | 1381 | poX |OP* |op_lvalue_flags|NULLOK OP* o|I32 type|U32 flags |
c1a02cca KW |
1382 | pd |void |finalize_optree |NN OP* o |
1383 | pd |void |optimize_optree|NN OP* o | |
d164302a | 1384 | #if defined(PERL_IN_OP_C) |
9f589e47 KW |
1385 | S |void |optimize_op |NN OP* o |
1386 | S |void |finalize_op |NN OP* o | |
1387 | S |void |move_proto_attr|NN OP **proto|NN OP **attrs \ | |
cbf83791 | 1388 | |NN const GV *name|bool curstash |
d164302a | 1389 | #endif |
67022846 | 1390 | : Used in op.c and pp_sys.c |
a79b25b7 | 1391 | p |int |mode_from_discipline|NULLOK const char* s|STRLEN len |
c7030b81 | 1392 | Ap |const char* |moreswitches |NN const char* s |
b1de2493 | 1393 | Apd |NV |my_atof |NN const char *s |
c1a02cca | 1394 | ATdpR |NV |my_strtod |NN const char * const s|NULLOK char ** e |
72eff736 | 1395 | Aprd |void |my_exit |U32 status |
94bdecf9 JH |
1396 | Apr |void |my_failure_exit |
1397 | Ap |I32 |my_fflush_all | |
45b29440 KW |
1398 | ATp |Pid_t |my_fork |
1399 | ATp |void |atfork_lock | |
1400 | ATp |void |atfork_unlock | |
b719801d | 1401 | ApMb |I32 |my_lstat |
0d7d409d | 1402 | pX |I32 |my_lstat_flags |NULLOK const U32 flags |
6dba01e2 | 1403 | #if ! defined(HAS_MEMRCHR) && (defined(PERL_CORE) || defined(PERL_EXT)) |
5af72e99 | 1404 | EeiT |void * |my_memrchr |NN const char * s|const char c|const STRLEN len |
6dba01e2 | 1405 | #endif |
875ca36f | 1406 | #if !defined(PERL_IMPLICIT_SYS) |
bfce84ec AL |
1407 | Ap |I32 |my_pclose |NULLOK PerlIO* ptr |
1408 | Ap |PerlIO*|my_popen |NN const char* cmd|NN const char* mode | |
875ca36f | 1409 | #endif |
c9289b7b | 1410 | Ap |PerlIO*|my_popen_list |NN const char* mode|int n|NN SV ** args |
df641d45 | 1411 | Apd |void |my_setenv |NULLOK const char* nam|NULLOK const char* val |
b719801d | 1412 | ApMb |I32 |my_stat |
0d7d409d | 1413 | pX |I32 |my_stat_flags |NULLOK const U32 flags |
7338c602 | 1414 | Adfp |char * |my_strftime |NN const char *fmt|int sec|int min|int hour|int mday|int mon|int year|int wday|int yday|int isdst |
67022846 | 1415 | : Used in pp_ctl.c |
94bdecf9 | 1416 | p |void |my_unexec |
09232555 KW |
1417 | CbDTPR |UV |NATIVE_TO_NEED |const UV enc|const UV ch |
1418 | CbDTPR |UV |ASCII_TO_NEED |const UV enc|const UV ch | |
346c6a29 DM |
1419 | ApR |OP* |newANONLIST |NULLOK OP* o |
1420 | ApR |OP* |newANONHASH |NULLOK OP* o | |
bfce84ec | 1421 | Ap |OP* |newANONSUB |I32 floor|NULLOK OP* proto|NULLOK OP* block |
346c6a29 DM |
1422 | ApdR |OP* |newASSIGNOP |I32 flags|NULLOK OP* left|I32 optype|NULLOK OP* right |
1423 | ApdR |OP* |newCONDOP |I32 flags|NN OP* first|NULLOK OP* trueop|NULLOK OP* falseop | |
99ab892b | 1424 | Apd |CV* |newCONSTSUB |NULLOK HV* stash|NULLOK const char* name|NULLOK SV* sv |
9c0a6090 FC |
1425 | Apd |CV* |newCONSTSUB_flags|NULLOK HV* stash \ |
1426 | |NULLOK const char* name|STRLEN len \ | |
1427 | |U32 flags|NULLOK SV* sv | |
aec46f14 | 1428 | Ap |void |newFORM |I32 floor|NULLOK OP* o|NULLOK OP* block |
346c6a29 | 1429 | ApdR |OP* |newFOROP |I32 flags|NULLOK OP* sv|NN OP* expr|NULLOK OP* block|NULLOK OP* cont |
7896dde7 | 1430 | ApdR |OP* |newGIVENOP |NN OP* cond|NN OP* block|PADOFFSET defsv_off |
346c6a29 | 1431 | ApdR |OP* |newLOGOP |I32 optype|I32 flags|NN OP *first|NN OP *other |
e4aeb12f | 1432 | px |LOGOP* |alloc_LOGOP |I32 type|NULLOK OP *first|NULLOK OP *other |
346c6a29 DM |
1433 | ApdR |OP* |newLOOPEX |I32 type|NN OP* label |
1434 | ApdR |OP* |newLOOPOP |I32 flags|I32 debuggable|NULLOK OP* expr|NULLOK OP* block | |
1435 | ApdR |OP* |newNULLLIST | |
1436 | ApdR |OP* |newOP |I32 optype|I32 flags | |
f54cb97a | 1437 | Ap |void |newPROG |NN OP* o |
346c6a29 DM |
1438 | ApdR |OP* |newRANGE |I32 flags|NN OP* left|NN OP* right |
1439 | ApdR |OP* |newSLICEOP |I32 flags|NULLOK OP* subscript|NULLOK OP* listop | |
1440 | ApdR |OP* |newSTATEOP |I32 flags|NULLOK char* label|NULLOK OP* o | |
0e75c27b | 1441 | AdpbM |CV* |newSUB |I32 floor|NULLOK OP* o|NULLOK OP* proto \ |
7bff8c33 | 1442 | |NULLOK OP* block |
68cd13c6 | 1443 | pd |CV * |newXS_len_flags|NULLOK const char *name|STRLEN len \ |
032a0447 | 1444 | |NN XSUBADDR_t subaddr\ |
9a189793 | 1445 | |NULLOK const char *const filename \ |
8f82b567 FC |
1446 | |NULLOK const char *const proto \ |
1447 | |NULLOK SV **const_svp|U32 flags | |
9a189793 | 1448 | pX |CV * |newXS_deffile |NN const char *name|NN XSUBADDR_t subaddr |
e4aeb12f | 1449 | Apx |CV * |newXS_flags |NULLOK const char *name|NN XSUBADDR_t subaddr\ |
77004dee NC |
1450 | |NN const char *const filename \ |
1451 | |NULLOK const char *const proto|U32 flags | |
44170c9a | 1452 | ApdU |CV* |newXS |NULLOK const char *name|NN XSUBADDR_t subaddr\ |
4048f010 | 1453 | |NN const char *filename |
b719801d | 1454 | ApMdbR |AV* |newAV |
346c6a29 DM |
1455 | ApR |OP* |newAVREF |NN OP* o |
1456 | ApdR |OP* |newBINOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last | |
1457 | ApR |OP* |newCVREF |I32 flags|NULLOK OP* o | |
1458 | ApdR |OP* |newGVOP |I32 type|I32 flags|NN GV* gv | |
20980f01 | 1459 | Am |GV* |newGVgen |NN const char* pack |
346c6a29 DM |
1460 | ApR |GV* |newGVgen_flags |NN const char* pack|U32 flags |
1461 | ApR |OP* |newGVREF |I32 type|NULLOK OP* o | |
1462 | ApR |OP* |newHVREF |NN OP* o | |
b719801d | 1463 | ApMdbR |HV* |newHV |
346c6a29 | 1464 | ApR |HV* |newHVhv |NULLOK HV *hv |
b719801d | 1465 | ApRbM |IO* |newIO |
346c6a29 | 1466 | ApdR |OP* |newLISTOP |I32 type|I32 flags|NULLOK OP* first|NULLOK OP* last |
e4aeb12f KW |
1467 | AxpdRT |PADNAME *|newPADNAMEouter|NN PADNAME *outer |
1468 | AxpdRT |PADNAME *|newPADNAMEpvn|NN const char *s|STRLEN len | |
1469 | AxpdRT |PADNAMELIST *|newPADNAMELIST|size_t max | |
392d04bb | 1470 | #ifdef USE_ITHREADS |
346c6a29 DM |
1471 | ApdR |OP* |newPADOP |I32 type|I32 flags|NN SV* sv |
1472 | #endif | |
1473 | ApdR |OP* |newPMOP |I32 type|I32 flags | |
1474 | ApdR |OP* |newPVOP |I32 type|I32 flags|NULLOK char* pv | |
1475 | ApR |SV* |newRV |NN SV *const sv | |
1476 | ApdR |SV* |newRV_noinc |NN SV *const tmpRef | |
1477 | ApdR |SV* |newSV |const STRLEN len | |
1478 | ApR |OP* |newSVREF |NN OP* o | |
1479 | ApdR |OP* |newSVOP |I32 type|I32 flags|NN SV* sv | |
ce409cc8 | 1480 | ApdR |OP* |newDEFSVOP |
346c6a29 DM |
1481 | pR |SV* |newSVavdefelem |NN AV *av|SSize_t ix|bool extendible |
1482 | ApdR |SV* |newSViv |const IV i | |
1483 | ApdR |SV* |newSVuv |const UV u | |
1484 | ApdR |SV* |newSVnv |const NV n | |
1485 | ApdR |SV* |newSVpv |NULLOK const char *const s|const STRLEN len | |
a5ba2527 | 1486 | ApdR |SV* |newSVpvn |NULLOK const char *const buffer|const STRLEN len |
346c6a29 DM |
1487 | ApdR |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags |
1488 | ApdR |SV* |newSVhek |NULLOK const HEK *const hek | |
1489 | ApdR |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash | |
1490 | ApdR |SV* |newSVpv_share |NULLOK const char* s|U32 hash | |
1491 | AfpdR |SV* |newSVpvf |NN const char *const pat|... | |
9c21e529 | 1492 | ApRd |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args |
12964ddd | 1493 | Apd |SV* |newSVrv |NN SV *const rv|NULLOK const char *const classname |
b719801d | 1494 | ApMbdR |SV* |newSVsv |NULLOK SV *const old |
ef9e3b4d | 1495 | AmdR |SV* |newSVsv_nomg |NULLOK SV *const old |
238f2c13 | 1496 | ApR |SV* |newSVsv_flags |NULLOK SV *const old|I32 flags |
346c6a29 DM |
1497 | ApdR |SV* |newSV_type |const svtype type |
1498 | ApdR |OP* |newUNOP |I32 type|I32 flags|NULLOK OP* first | |
1499 | ApdR |OP* |newUNOP_AUX |I32 type|I32 flags|NULLOK OP* first \ | |
2f7c6295 | 1500 | |NULLOK UNOP_AUX_item *aux |
7896dde7 | 1501 | ApdR |OP* |newWHENOP |NULLOK OP* cond|NN OP* block |
346c6a29 | 1502 | ApdR |OP* |newWHILEOP |I32 flags|I32 debuggable|NULLOK LOOP* loop \ |
94bf0465 | 1503 | |NULLOK OP* expr|NULLOK OP* block|NULLOK OP* cont \ |
a034e688 | 1504 | |I32 has_my |
346c6a29 DM |
1505 | ApdR |OP* |newMETHOP |I32 type|I32 flags|NN OP* dynamic_meth |
1506 | ApdR |OP* |newMETHOP_named|I32 type|I32 flags|NN SV* const_meth | |
d9088386 Z |
1507 | Apd |CV* |rv2cv_op_cv |NN OP *cvop|U32 flags |
1508 | Apd |OP* |ck_entersub_args_list|NN OP *entersubop | |
1509 | Apd |OP* |ck_entersub_args_proto|NN OP *entersubop|NN GV *namegv|NN SV *protosv | |
1510 | Apd |OP* |ck_entersub_args_proto_or_list|NN OP *entersubop|NN GV *namegv|NN SV *protosv | |
4aaa4757 FC |
1511 | po |OP* |ck_entersub_args_core|NN OP *entersubop|NN GV *namegv \ |
1512 | |NN SV *protosv | |
d9088386 | 1513 | Apd |void |cv_get_call_checker|NN CV *cv|NN Perl_call_checker *ckfun_p|NN SV **ckobj_p |
71c697de | 1514 | Apd |void |cv_get_call_checker_flags|NN CV *cv|U32 gflags|NN Perl_call_checker *ckfun_p|NN SV **ckobj_p|NN U32 *ckflags_p |
d9088386 | 1515 | Apd |void |cv_set_call_checker|NN CV *cv|NN Perl_call_checker ckfun|NN SV *ckobj |
aa38f4b1 FC |
1516 | Apd |void |cv_set_call_checker_flags|NN CV *cv \ |
1517 | |NN Perl_call_checker ckfun \ | |
71c697de | 1518 | |NN SV *ckobj|U32 ckflags |
e8570548 | 1519 | Apd |void |wrap_op_checker|Optype opcode|NN Perl_check_t new_checker|NN Perl_check_t *old_checker_p |
e4aeb12f | 1520 | Axpd |void |wrap_keyword_plugin|NN Perl_keyword_plugin_t new_plugin|NN Perl_keyword_plugin_t *old_plugin_p |
346c6a29 | 1521 | ApR |PERL_SI*|new_stackinfo|I32 stitems|I32 cxitems |
4048f010 NC |
1522 | Ap |char* |scan_vstring |NN const char *s|NN const char *const e \ |
1523 | |NN SV *sv | |
9f6cc744 | 1524 | Apd |const char* |scan_version |NN const char *s|NN SV *rv|bool qv |
91152fc1 | 1525 | Apd |const char* |prescan_version |NN const char *s\ |
5747a2f6 RGS |
1526 | |bool strict|NULLOK const char** errstr|NULLOK bool *sqv\ |
1527 | |NULLOK int *ssaw_decimal|NULLOK int *swidth|NULLOK bool *salpha | |
2d03de9c | 1528 | Apd |SV* |new_version |NN SV *ver |
ac0e6a2f | 1529 | Apd |SV* |upg_version |NN SV *ver|bool qv |
5de8bffd | 1530 | Apd |SV* |vverify |NN SV *vs |
2d03de9c AL |
1531 | Apd |SV* |vnumify |NN SV *vs |
1532 | Apd |SV* |vnormal |NN SV *vs | |
1533 | Apd |SV* |vstringify |NN SV *vs | |
9f6cc744 | 1534 | Apd |int |vcmp |NN SV *lhv|NN SV *rhv |
67022846 | 1535 | : Used in pp_hot.c and pp_sys.c |
157fb5a1 | 1536 | p |PerlIO*|nextargv |NN GV* gv|bool nomagicopen |
54c193ae | 1537 | AdMTpP |char* |ninstr |NN const char* big|NN const char* bigend \ |
b8070b07 | 1538 | |NN const char* little|NN const char* lend |
1d70cb64 | 1539 | Apd |void |op_free |NULLOK OP* arg |
e4aeb12f | 1540 | xp |OP* |op_unscope |NULLOK OP* o |
7aef8e5b | 1541 | #ifdef PERL_CORE |
8be227ab FC |
1542 | p |void |opslab_free |NN OPSLAB *slab |
1543 | p |void |opslab_free_nopad|NN OPSLAB *slab | |
1544 | p |void |opslab_force_free|NN OPSLAB *slab | |
1545 | #endif | |
67022846 | 1546 | : Used in perly.y |
2d03de9c | 1547 | p |void |package |NN OP* o |
6fa4d285 DG |
1548 | : Used in perly.y |
1549 | p |void |package_version|NN OP* v | |
67022846 | 1550 | : Used in toke.c and perly.y |
d6447115 NC |
1551 | p |PADOFFSET|allocmy |NN const char *const name|const STRLEN len\ |
1552 | |const U32 flags | |
d4d03940 | 1553 | #ifdef USE_ITHREADS |
c1a02cca | 1554 | Adxp |PADOFFSET|alloccopstash|NN HV *hv |
d4d03940 | 1555 | #endif |
67022846 | 1556 | : Used in perly.y |
1df70142 | 1557 | pR |OP* |oopsAV |NN OP* o |
67022846 | 1558 | : Used in perly.y |
1df70142 | 1559 | pR |OP* |oopsHV |NN OP* o |
cc76b5cc | 1560 | |
1a0a2ba9 | 1561 | : peephole optimiser |
666e7765 | 1562 | p |void |peep |NULLOK OP* o |
1a0a2ba9 | 1563 | p |void |rpeep |NULLOK OP* o |
67022846 | 1564 | : Defined in doio.c, used only in pp_hot.c |
e4aeb12f | 1565 | dopx |PerlIO*|start_glob |NN SV *tmpglob|NN IO *io |
f59c1a32 | 1566 | |
aae9ca42 KW |
1567 | Cp |void |reentrant_size |
1568 | Cp |void |reentrant_init | |
1569 | Cp |void |reentrant_free | |
1570 | CFTp |void* |reentrant_retry|NN const char *f|... | |
f59c1a32 | 1571 | |
7b53c8ee NC |
1572 | : "Very" special - can't use the O flag for this one: |
1573 | : (The rename from perl_atexit to Perl_call_atexit was in 864dbfa3ca8032ef) | |
7827dc65 | 1574 | Ap |void |call_atexit |ATEXIT_t fn|NULLOK void *ptr |
7b53c8ee NC |
1575 | ApdO |I32 |call_argv |NN const char* sub_name|I32 flags|NN char** argv |
1576 | ApdO |I32 |call_method |NN const char* methname|I32 flags | |
1577 | ApdO |I32 |call_pv |NN const char* sub_name|I32 flags | |
8162b70e | 1578 | ApdO |I32 |call_sv |NN SV* sv|volatile I32 flags |
5290524f | 1579 | Ap |void |despatch_signals |
e4c5ccf3 | 1580 | Ap |OP * |doref |NN OP *o|I32 type|bool set_op_ref |
7b53c8ee NC |
1581 | ApdO |SV* |eval_pv |NN const char* p|I32 croak_on_error |
1582 | ApdO |I32 |eval_sv |NN SV* sv|I32 flags | |
1583 | ApdO |SV* |get_sv |NN const char *name|I32 flags | |
1584 | ApdO |AV* |get_av |NN const char *name|I32 flags | |
1585 | ApdO |HV* |get_hv |NN const char *name|I32 flags | |
1586 | ApdO |CV* |get_cv |NN const char* name|I32 flags | |
780a5241 | 1587 | Apd |CV* |get_cvn_flags |NN const char* name|STRLEN len|I32 flags |
45b29440 | 1588 | ATdo |const char*|Perl_setlocale|const int category|NULLOK const char* locale |
f7416781 | 1589 | #if defined(HAS_NL_LANGINFO) && defined(PERL_LANGINFO_H) |
45b29440 | 1590 | ATdo |const char*|Perl_langinfo|const nl_item item |
f7416781 | 1591 | #else |
45b29440 | 1592 | ATdo |const char*|Perl_langinfo|const int item |
f7416781 | 1593 | #endif |
09232555 KW |
1594 | CpO |int |init_i18nl10n |int printwarn |
1595 | CbpOD |int |init_i18nl14n |int printwarn | |
ec268cc8 | 1596 | p |char* |my_strerror |const int errnum |
45b29440 | 1597 | XpT |void |_warn_problematic_locale |
5792c642 | 1598 | Xp |void |set_numeric_underlying |
8d8472df | 1599 | Xp |void |set_numeric_standard |
5c1ff086 | 1600 | Xp |bool |_is_in_locale_category|const bool compiling|const int category |
45b29440 KW |
1601 | ApdT |void |switch_to_global_locale |
1602 | ApdT |bool |sync_locale | |
e4aeb12f KW |
1603 | ApxT |void |thread_locale_init |
1604 | ApxT |void |thread_locale_term | |
7b53c8ee | 1605 | ApdO |void |require_pv |NN const char* pv |
550697d6 | 1606 | AbpdD |void |pack_cat |NN SV *cat|NN const char *pat|NN const char *patend \ |
2d03de9c | 1607 | |NN SV **beglist|NN SV **endlist|NN SV ***next_in_list|U32 flags |
dd14162d | 1608 | Apd |void |packlist |NN SV *cat|NN const char *pat|NN const char *patend|NN SV **beglist|NN SV **endlist |
ed4173ef | 1609 | #if defined(PERL_USES_PL_PIDSTATUS) && defined(PERL_IN_UTIL_C) |
9f589e47 | 1610 | S |void |pidgone |Pid_t pid|int status |
ca0c25f6 | 1611 | #endif |
67022846 | 1612 | : Used in perly.y |
9b6b7be8 | 1613 | p |OP* |pmruntime |NN OP *o|NN OP *expr|NULLOK OP *repl \ |
5012eebe | 1614 | |UV flags|I32 floor |
43869a0c | 1615 | #if defined(PERL_IN_OP_C) |
9f589e47 | 1616 | S |OP* |pmtrans |NN OP* o|NN OP* expr|NN OP* repl |
0d86688d | 1617 | #endif |
58a0d047 | 1618 | p |void |invmap_dump |NN SV* invlist|NN UV * map |
94bdecf9 | 1619 | Ap |void |pop_scope |
94bdecf9 | 1620 | Ap |void |push_scope |
700d83cb | 1621 | #if defined(PERL_IN_PERLY_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_TOKE_C) |
53ee2144 | 1622 | pMb |OP* |ref |NULLOK OP* o|I32 type |
700d83cb | 1623 | #endif |
43869a0c | 1624 | #if defined(PERL_IN_OP_C) |
9f589e47 | 1625 | S |OP* |refkids |NULLOK OP* o|I32 type |
0d86688d | 1626 | #endif |
93b32b6d | 1627 | |
45b29440 KW |
1628 | ATp |void |repeatcpy |NN char* to|NN const char* from|I32 len|IV count |
1629 | AdTpP |char* |rninstr |NN const char* big|NN const char* bigend \ | |
a3b680e6 | 1630 | |NN const char* little|NN const char* lend |
962fce0f | 1631 | Apd |Sighandler_t|rsignal |int i|Sighandler_t t |
67022846 | 1632 | : Used in pp_sys.c |
7827dc65 | 1633 | p |int |rsignal_restore|int i|NULLOK Sigsave_t* t |
67022846 | 1634 | : Used in pp_sys.c |
9f6cc744 | 1635 | p |int |rsignal_save |int i|Sighandler_t t1|NN Sigsave_t* save |
94bdecf9 | 1636 | Ap |Sighandler_t|rsignal_state|int i |
43869a0c | 1637 | #if defined(PERL_IN_PP_CTL_C) |
9f589e47 KW |
1638 | S |void |rxres_free |NN void** rsp |
1639 | S |void |rxres_restore |NN void **rsp|NN REGEXP *rx | |
9c105995 NC |
1640 | #endif |
1641 | : Used in pp_hot.c | |
4048f010 | 1642 | p |void |rxres_save |NN void **rsp|NN REGEXP *rx |
94bdecf9 | 1643 | #if !defined(HAS_RENAME) |
67022846 | 1644 | : Used in pp_sys.c |
4373e329 | 1645 | p |I32 |same_dirent |NN const char* a|NN const char* b |
94bdecf9 | 1646 | #endif |
639f6c3d | 1647 | Apda |char* |savepv |NULLOK const char* pv |
052d9143 | 1648 | Apda |char* |savepvn |NULLOK const char* pv|Size_t len |
7827dc65 | 1649 | Apda |char* |savesharedpv |NULLOK const char* pv |
6379d4a9 FC |
1650 | |
1651 | : NULLOK only to suppress a compiler warning | |
1652 | Apda |char* |savesharedpvn |NULLOK const char *const pv \ | |
1653 | |const STRLEN len | |
9dcc53ea | 1654 | Apda |char* |savesharedsvpv |NN SV *sv |
53c1dcc0 | 1655 | Apda |char* |savesvpv |NN SV* sv |
94bdecf9 | 1656 | Ap |void |savestack_grow |
4b3c1a47 | 1657 | Ap |void |savestack_grow_cnt |I32 need |
5178f485 | 1658 | Am |void |save_aelem |NN AV* av|SSize_t idx|NN SV **sptr |
c70927a6 FC |
1659 | Ap |void |save_aelem_flags|NN AV* av|SSize_t idx|NN SV **sptr \ |
1660 | |const U32 flags | |
94bdecf9 | 1661 | Ap |I32 |save_alloc |I32 size|I32 pad |
4f313521 KW |
1662 | Apdh |void |save_aptr |NN AV** aptr |
1663 | Apdh |AV* |save_ary |NN GV* gv | |
c3c93274 KW |
1664 | Cp |void |save_bool |NN bool* boolp |
1665 | Cp |void |save_clearsv |NN SV** svp | |
1666 | Cp |void |save_delete |NN HV *hv|NN char *key|I32 klen | |
af097752 | 1667 | Ap |void |save_hdelete |NN HV *hv|NN SV *keysv |
c70927a6 | 1668 | Ap |void |save_adelete |NN AV *av|SSize_t key |
c3c93274 KW |
1669 | Cp |void |save_destructor|DESTRUCTORFUNC_NOCONTEXT_t f|NN void* p |
1670 | Cp |void |save_destructor_x|DESTRUCTORFUNC_t f|NULLOK void* p | |
1671 | CpMb |void |save_freesv |NULLOK SV* sv | |
67022846 | 1672 | : Used in SAVEFREOP(), used in op.c, pp_ctl.c |
c3c93274 KW |
1673 | CpMb |void |save_freeop |NULLOK OP* o |
1674 | CpMb |void |save_freepv |NULLOK char* pv | |
9a957fbc AL |
1675 | Ap |void |save_generic_svref|NN SV** sptr |
1676 | Ap |void |save_generic_pvref|NN char** str | |
1677 | Ap |void |save_shared_pvref|NN char** str | |
364bbfa4 | 1678 | Adp |void |save_gp |NN GV* gv|I32 empty |
4f313521 | 1679 | Apdh |HV* |save_hash |NN GV* gv |
defdfed5 | 1680 | Ap |void |save_hints |
5178f485 | 1681 | Am |void |save_helem |NN HV *hv|NN SV *key|NN SV **sptr |
af7df257 | 1682 | Ap |void |save_helem_flags|NN HV *hv|NN SV *key|NN SV **sptr|const U32 flags |
4f313521 | 1683 | Apdh |void |save_hptr |NN HV** hptr |
c3c93274 KW |
1684 | Cp |void |save_I16 |NN I16* intp |
1685 | Cp |void |save_I32 |NN I32* intp | |
1686 | Cp |void |save_I8 |NN I8* bytep | |
1687 | Cp |void |save_int |NN int* intp | |
53dedf6f | 1688 | Apdh |void |save_item |NN SV* item |
c3c93274 | 1689 | Cp |void |save_iv |NN IV *ivp |
4f313521 | 1690 | AbpDdh |void |save_list |NN SV** sarg|I32 maxsarg |
c3c93274 KW |
1691 | CbpD |void |save_long |NN long* longp |
1692 | CpMb |void |save_mortalizesv|NN SV* sv | |
57f51a64 | 1693 | AbpD |void |save_nogv |NN GV* gv |
67022846 | 1694 | : Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c |
b719801d | 1695 | ApMb |void |save_op |
4f313521 | 1696 | Apdh |SV* |save_scalar |NN GV* gv |
c3c93274 | 1697 | Cp |void |save_pptr |NN char** pptr |
4048f010 | 1698 | Ap |void |save_vptr |NN void *ptr |
c3c93274 | 1699 | Cp |void |save_re_context |
09edbca0 | 1700 | Ap |void |save_padsv_and_mortalize|PADOFFSET off |
c3c93274 | 1701 | Cp |void |save_sptr |NN SV** sptr |
e8eb279c | 1702 | Xp |void |save_strlen |NN STRLEN* ptr |
4f313521 | 1703 | Apdh |SV* |save_svref |NN SV** sptr |
e4aeb12f | 1704 | Axpo |void |savetmps |
2fd8beea | 1705 | Ap |void |save_pushptr |NULLOK void *const ptr|const int type |
ad975267 | 1706 | Ap |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type |
dfcd3de5 | 1707 | : Used by SAVESWITCHSTACK() in pp.c |
ad975267 | 1708 | Ap |void |save_pushptrptr|NULLOK void *const ptr1 \ |
dfcd3de5 | 1709 | |NULLOK void *const ptr2|const int type |
43869a0c | 1710 | #if defined(PERL_IN_SCOPE_C) |
9f589e47 | 1711 | S |void |save_pushptri32ptr|NULLOK void *const ptr1|const I32 i \ |
be84297e NC |
1712 | |NULLOK void *const ptr2|const int type |
1713 | #endif | |
2ac0ce0e KW |
1714 | Xiop |I32 |TOPMARK |
1715 | Xiop |I32 |POPMARK | |
67022846 | 1716 | : Used in perly.y |
aec46f14 | 1717 | p |OP* |sawparens |NULLOK OP* o |
d9088386 | 1718 | Apd |OP* |op_contextualize|NN OP* o|I32 context |
67022846 | 1719 | : Used in perly.y |
aec46f14 | 1720 | p |OP* |scalar |NULLOK OP* o |
43869a0c | 1721 | #if defined(PERL_IN_OP_C) |
9f589e47 KW |
1722 | S |OP* |scalarkids |NULLOK OP* o |
1723 | S |OP* |scalarseq |NULLOK OP* o | |
2dd5337b | 1724 | #endif |
67022846 | 1725 | : Used in pp_ctl.c |
aec46f14 AL |
1726 | p |OP* |scalarvoid |NN OP* o |
1727 | Apd |NV |scan_bin |NN const char* start|STRLEN len|NN STRLEN* retlen | |
1728 | Apd |NV |scan_hex |NN const char* start|STRLEN len|NN STRLEN* retlen | |
1729 | Ap |char* |scan_num |NN const char* s|NN YYSTYPE *lvalp | |
1730 | Apd |NV |scan_oct |NN const char* start|STRLEN len|NN STRLEN* retlen | |
e4aeb12f | 1731 | Axpd |OP* |op_scope |NULLOK OP* o |
e2051532 | 1732 | : Only used by perl.c/miniperl.c, but defined in caretx.c |
5af72e99 | 1733 | pe |void |set_caret_X |
9a9bb270 | 1734 | Apd |void |setdefout |NN GV* gv |
b02f3645 | 1735 | Ap |HEK* |share_hek |NN const char* str|SSize_t len|U32 hash |
5e7940ce | 1736 | #ifdef PERL_USE_3ARG_SIGHANDLER |
d67fec57 | 1737 | : Used in perl.c |
e7124897 DM |
1738 | Tp |Signal_t |sighandler |int sig|NULLOK Siginfo_t *info|NULLOK void *uap |
1739 | ATp |Signal_t |csighandler |int sig|NULLOK Siginfo_t *info|NULLOK void *uap | |
8aad04aa | 1740 | #else |
45b29440 KW |
1741 | Tp |Signal_t |sighandler |int sig |
1742 | ATp |Signal_t |csighandler |int sig | |
8aad04aa | 1743 | #endif |
dc37125b DM |
1744 | Tp |Signal_t |sighandler1 |int sig |
1745 | ATp |Signal_t |csighandler1 |int sig | |
1746 | Tp |Signal_t |sighandler3 |int sig|NULLOK Siginfo_t *info|NULLOK void *uap | |
1747 | ATp |Signal_t |csighandler3 |int sig|NULLOK Siginfo_t *info|NULLOK void *uap | |
8a5e470b | 1748 | ATp |Signal_t |perly_sighandler |int sig|NULLOK Siginfo_t *info|NULLOK void *uap|bool safe |
fc16c392 | 1749 | Ap |SV** |stack_grow |NN SV** sp|NN SV** p|SSize_t n |
0b1558d1 | 1750 | Ap |I32 |start_subparse |I32 is_format|U32 flags |
50333c97 | 1751 | Xp |void |init_named_cv |NN CV *cv|NN OP *nameop |
67022846 | 1752 | : Used in pp_ctl.c |
aec46f14 | 1753 | p |void |sub_crush_depth|NN CV* cv |
22090b13 KW |
1754 | CpbMd |bool |sv_2bool |NN SV *const sv |
1755 | Cpd |bool |sv_2bool_flags |NN SV *sv|I32 flags | |
23f13727 SS |
1756 | Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV **const st|NN GV **const gvp \ |
1757 | |const I32 lref | |
1758 | Apd |IO* |sv_2io |NN SV *const sv | |
43869a0c | 1759 | #if defined(PERL_IN_SV_C) |
9f589e47 | 1760 | S |bool |glob_2number |NN GV* const gv |
180488f8 | 1761 | #endif |
b719801d | 1762 | ApMb |IV |sv_2iv |NN SV *sv |
1061065f | 1763 | Apd |IV |sv_2iv_flags |NN SV *const sv|const I32 flags |
23f13727 | 1764 | Apd |SV* |sv_2mortal |NULLOK SV *const sv |
1061065f | 1765 | Apd |NV |sv_2nv_flags |NN SV *const sv|const I32 flags |
67022846 | 1766 | : Used in pp.c, pp_hot.c, sv.c |
e4aeb12f | 1767 | pxd |SV* |sv_2num |NN SV *const sv |
b719801d | 1768 | ApMb |char* |sv_2pv |NN SV *sv|NULLOK STRLEN *lp |
aa80caa7 | 1769 | Apd |char* |sv_2pv_flags |NN SV *const sv|NULLOK STRLEN *const lp|const U32 flags |
b719801d | 1770 | ApdMb |char* |sv_2pvutf8 |NN SV *sv|NULLOK STRLEN *const lp |
757fc329 | 1771 | Ap |char* |sv_2pvutf8_flags |NN SV *sv|NULLOK STRLEN *const lp|const U32 flags |
b719801d | 1772 | ApdMb |char* |sv_2pvbyte |NN SV *sv|NULLOK STRLEN *const lp |
757fc329 | 1773 | Ap |char* |sv_2pvbyte_flags |NN SV *sv|NULLOK STRLEN *const lp|const U32 flags |
57f51a64 | 1774 | AbpD |char* |sv_pvn_nomg |NN SV* sv|NULLOK STRLEN* lp |
b719801d | 1775 | ApMb |UV |sv_2uv |NN SV *sv |
1061065f | 1776 | Apd |UV |sv_2uv_flags |NN SV *const sv|const I32 flags |
16376614 KW |
1777 | CbpdD |IV |sv_iv |NN SV* sv |
1778 | CbpdD |UV |sv_uv |NN SV* sv | |
1779 | CbpdD |NV |sv_nv |NN SV* sv | |
1780 | CbpdD |char* |sv_pvn |NN SV *sv|NN STRLEN *lp | |
1781 | CbpdD |char* |sv_pvutf8n |NN SV *sv|NN STRLEN *lp | |
1782 | CbpdD |char* |sv_pvbyten |NN SV *sv|NN STRLEN *lp | |
1783 | Cpd |I32 |sv_true |NULLOK SV *const sv | |
43869a0c | 1784 | #if defined(PERL_IN_SV_C) |
9f589e47 | 1785 | Sd |void |sv_add_arena |NN char *const ptr|const U32 size \ |
d2bd4e7f NC |
1786 | |const U32 flags |
1787 | #endif | |
45b29440 | 1788 | ApdT |void |sv_backoff |NN SV *const sv |
12964ddd | 1789 | Apd |SV* |sv_bless |NN SV *const sv|NN HV *const stash |
b001a0d1 FC |
1790 | #if defined(PERL_DEBUG_READONLY_COW) |
1791 | p |void |sv_buf_to_ro |NN SV *sv | |
1620d805 | 1792 | # if defined(PERL_IN_SV_C) |
9f589e47 | 1793 | S |void |sv_buf_to_rw |NN SV *sv |
1620d805 | 1794 | # endif |
b001a0d1 | 1795 | #endif |
66ceb532 SS |
1796 | Afpd |void |sv_catpvf |NN SV *const sv|NN const char *const pat|... |
1797 | Apd |void |sv_vcatpvf |NN SV *const sv|NN const char *const pat \ | |
1798 | |NULLOK va_list *const args | |
2b021c53 | 1799 | Apd |void |sv_catpv |NN SV *const sv|NULLOK const char* ptr |
b719801d KW |
1800 | ApMdb |void |sv_catpvn |NN SV *dsv|NN const char *sstr|STRLEN len |
1801 | ApMdb |void |sv_catsv |NN SV *dstr|NULLOK SV *sstr | |
2e000ff2 | 1802 | Apd |void |sv_chop |NN SV *const sv|NULLOK const char *const ptr |
67022846 | 1803 | : Used only in perl.c |
94bdecf9 | 1804 | pd |I32 |sv_clean_all |
67022846 | 1805 | : Used only in perl.c |
94bdecf9 | 1806 | pd |void |sv_clean_objs |
5239d5c4 | 1807 | Apd |void |sv_clear |NN SV *const orig_sv |
4155e4fe | 1808 | #if defined(PERL_IN_SV_C) |
9f589e47 | 1809 | S |bool |curse |NN SV * const sv|const bool check_refcnt |
4155e4fe | 1810 | #endif |
917b9b54 | 1811 | AMpd |I32 |sv_cmp |NULLOK SV *const sv1|NULLOK SV *const sv2 |
31c72c81 NC |
1812 | Apd |I32 |sv_cmp_flags |NULLOK SV *const sv1|NULLOK SV *const sv2 \ |
1813 | |const U32 flags | |
917b9b54 | 1814 | AMpd |I32 |sv_cmp_locale |NULLOK SV *const sv1|NULLOK SV *const sv2 |
31c72c81 NC |
1815 | Apd |I32 |sv_cmp_locale_flags |NULLOK SV *const sv1 \ |
1816 | |NULLOK SV *const sv2|const U32 flags | |
94bdecf9 | 1817 | #if defined(USE_LOCALE_COLLATE) |
b719801d | 1818 | ApbMd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp |
078504b2 | 1819 | Apd |char* |sv_collxfrm_flags |NN SV *const sv|NN STRLEN *const nxp|I32 const flags |
94bdecf9 | 1820 | #endif |
4373e329 | 1821 | Apd |int |getcwd_sv |NN SV* sv |
ac1e9476 | 1822 | Apd |void |sv_dec |NULLOK SV *const sv |
6f1401dc | 1823 | Apd |void |sv_dec_nomg |NULLOK SV *const sv |
c1a02cca | 1824 | Apd |void |sv_dump |NULLOK SV* sv |
15f169a1 | 1825 | ApdR |bool |sv_derived_from|NN SV* sv|NN const char *const name |
c7abbf64 BF |
1826 | ApdR |bool |sv_derived_from_sv|NN SV* sv|NN SV *namesv|U32 flags |
1827 | ApdR |bool |sv_derived_from_pv|NN SV* sv|NN const char *const name|U32 flags | |
1828 | ApdR |bool |sv_derived_from_pvn|NN SV* sv|NN const char *const name \ | |
c60dbbc3 | 1829 | |const STRLEN len|U32 flags |
813e85a0 | 1830 | ApdRx |bool |sv_isa_sv |NN SV* sv|NN SV* namesv |
15f169a1 | 1831 | ApdR |bool |sv_does |NN SV* sv|NN const char *const name |
f778bcfd BF |
1832 | ApdR |bool |sv_does_sv |NN SV* sv|NN SV* namesv|U32 flags |
1833 | ApdR |bool |sv_does_pv |NN SV* sv|NN const char *const name|U32 flags | |
1834 | ApdR |bool |sv_does_pvn |NN SV* sv|NN const char *const name|const STRLEN len \ | |
1835 | |U32 flags | |
b719801d | 1836 | ApbMd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2 |
31c72c81 | 1837 | Apd |I32 |sv_eq_flags |NULLOK SV* sv1|NULLOK SV* sv2|const U32 flags |
af828c01 | 1838 | Apd |void |sv_free |NULLOK SV *const sv |
e4aeb12f | 1839 | poxX |void |sv_free2 |NN SV *const sv|const U32 refcnt |
67022846 | 1840 | : Used only in perl.c |
94bdecf9 | 1841 | pd |void |sv_free_arenas |
ac1e9476 | 1842 | Apd |char* |sv_gets |NN SV *const sv|NN PerlIO *const fp|I32 append |
16376614 | 1843 | Cpd |char* |sv_grow |NN SV *const sv|STRLEN newlen |
ac1e9476 | 1844 | Apd |void |sv_inc |NULLOK SV *const sv |
6f1401dc | 1845 | Apd |void |sv_inc_nomg |NULLOK SV *const sv |
b719801d | 1846 | ApMdb |void |sv_insert |NN SV *const bigstr|const STRLEN offset \ |
84335ee9 NC |
1847 | |const STRLEN len|NN const char *const little \ |
1848 | |const STRLEN littlelen | |
c0dd94a0 | 1849 | Apd |void |sv_insert_flags|NN SV *const bigstr|const STRLEN offset|const STRLEN len \ |
e7a8a8aa | 1850 | |NN const char *little|const STRLEN littlelen|const U32 flags |
12964ddd | 1851 | Apd |int |sv_isa |NULLOK SV* sv|NN const char *const name |
aec46f14 | 1852 | Apd |int |sv_isobject |NULLOK SV* sv |
af828c01 SS |
1853 | Apd |STRLEN |sv_len |NULLOK SV *const sv |
1854 | Apd |STRLEN |sv_len_utf8 |NULLOK SV *const sv | |
864329c3 | 1855 | p |STRLEN |sv_len_utf8_nomg|NN SV *const sv |
2b021c53 | 1856 | Apd |void |sv_magic |NN SV *const sv|NULLOK SV *const obj|const int how \ |
ac1e9476 | 1857 | |NULLOK const char *const name|const I32 namlen |
2b021c53 SS |
1858 | Apd |MAGIC *|sv_magicext |NN SV *const sv|NULLOK SV *const obj|const int how \ |
1859 | |NULLOK const MGVTBL *const vtbl|NULLOK const char *const name \ | |
1860 | |const I32 namlen | |
c9182d9c | 1861 | EiTp |bool |sv_only_taint_gmagic|NN SV *sv |
96c2a8ff | 1862 | : exported for re.pm |
d4431b89 | 1863 | EXp |MAGIC *|sv_magicext_mglob|NN SV *sv |
b719801d | 1864 | ApdbMR |SV* |sv_mortalcopy |NULLOK SV *const oldsv |
c6dcb9ed | 1865 | ApdR |SV* |sv_mortalcopy_flags|NULLOK SV *const oldsv|U32 flags |
f54cb97a | 1866 | ApdR |SV* |sv_newmortal |
16376614 | 1867 | Cpd |SV* |sv_newref |NULLOK SV *const sv |
aec46f14 | 1868 | Ap |char* |sv_peek |NULLOK SV* sv |
af828c01 | 1869 | Apd |void |sv_pos_u2b |NULLOK SV *const sv|NN I32 *const offsetp|NULLOK I32 *const lenp |
d931b1be NC |
1870 | Apd |STRLEN |sv_pos_u2b_flags|NN SV *const sv|STRLEN uoffset \ |
1871 | |NULLOK STRLEN *const lenp|U32 flags | |
ac1e9476 | 1872 | Apd |void |sv_pos_b2u |NULLOK SV *const sv|NN I32 *const offsetp |
ef54055c FC |
1873 | Apd |STRLEN |sv_pos_b2u_flags|NN SV *const sv|STRLEN const offset \ |
1874 | |U32 flags | |
16376614 KW |
1875 | CpMdb |char* |sv_pvn_force |NN SV* sv|NULLOK STRLEN* lp |
1876 | Cpd |char* |sv_pvutf8n_force|NN SV *const sv|NULLOK STRLEN *const lp | |
1877 | Cpd |char* |sv_pvbyten_force|NN SV *const sv|NULLOK STRLEN *const lp | |
aec46f14 AL |
1878 | Apd |char* |sv_recode_to_utf8 |NN SV* sv|NN SV *encoding |
1879 | Apd |bool |sv_cat_decode |NN SV* dsv|NN SV *encoding|NN SV *ssv|NN int *offset \ | |
1880 | |NN char* tstr|int tlen | |
12964ddd | 1881 | ApdR |const char* |sv_reftype |NN const SV *const sv|const int ob |
b1744e13 | 1882 | Apd |SV* |sv_ref |NULLOK SV *dst|NN const SV *const sv|const int ob |
af828c01 | 1883 | Apd |void |sv_replace |NN SV *const sv|NN SV *const nsv |
94bdecf9 | 1884 | Apd |void |sv_report_used |
23f13727 | 1885 | Apd |void |sv_reset |NN const char* s|NULLOK HV *const stash |
ca826051 FC |
1886 | p |void |sv_resetpvn |NULLOK const char* s|STRLEN len \ |
1887 | |NULLOK HV *const stash | |
89e38212 SS |
1888 | Afpd |void |sv_setpvf |NN SV *const sv|NN const char *const pat|... |
1889 | Apd |void |sv_vsetpvf |NN SV *const sv|NN const char *const pat|NULLOK va_list *const args | |
aad570aa | 1890 | Apd |void |sv_setiv |NN SV *const sv|const IV num |
57f51a64 | 1891 | ApdbD |void |sv_setpviv |NN SV *const sv|const IV num |
aad570aa SS |
1892 | Apd |void |sv_setuv |NN SV *const sv|const UV num |
1893 | Apd |void |sv_setnv |NN SV *const sv|const NV num | |
12964ddd SS |
1894 | Apd |SV* |sv_setref_iv |NN SV *const rv|NULLOK const char *const classname|const IV iv |
1895 | Apd |SV* |sv_setref_uv |NN SV *const rv|NULLOK const char *const classname|const UV uv | |
1896 | Apd |SV* |sv_setref_nv |NN SV *const rv|NULLOK const char *const classname|const NV nv | |
1897 | Apd |SV* |sv_setref_pv |NN SV *const rv|NULLOK const char *const classname \ | |
1898 | |NULLOK void *const pv | |
1899 | Apd |SV* |sv_setref_pvn |NN SV *const rv|NULLOK const char *const classname \ | |
1900 | |NN const char *const pv|const STRLEN n | |
2e000ff2 SS |
1901 | Apd |void |sv_setpv |NN SV *const sv|NULLOK const char *const ptr |
1902 | Apd |void |sv_setpvn |NN SV *const sv|NULLOK const char *const ptr|const STRLEN len | |
45661033 | 1903 | Apd |char *|sv_setpv_bufsize|NN SV *const sv|const STRLEN cur|const STRLEN len |
70b71ec8 | 1904 | Xp |void |sv_sethek |NN SV *const sv|NULLOK const HEK *const hek |
b719801d | 1905 | ApMdb |void |sv_setsv |NN SV *dstr|NULLOK SV *sstr |
16376614 KW |
1906 | CpMdb |void |sv_taint |NN SV* sv |
1907 | CpdR |bool |sv_tainted |NN SV *const sv | |
2b021c53 | 1908 | Apd |int |sv_unmagic |NN SV *const sv|const int type |
b83794c7 | 1909 | Apd |int |sv_unmagicext |NN SV *const sv|const int type|NULLOK MGVTBL *vtbl |
b719801d | 1910 | ApdMb |void |sv_unref |NN SV* sv |
89e38212 | 1911 | Apd |void |sv_unref_flags |NN SV *const ref|const U32 flags |
16376614 | 1912 | Cpd |void |sv_untaint |NN SV *const sv |
aad570aa | 1913 | Apd |void |sv_upgrade |NN SV *const sv|svtype new_type |
b719801d | 1914 | ApdMb |void |sv_usepvn |NN SV* sv|NULLOK char* ptr|STRLEN len |
2e000ff2 SS |
1915 | Apd |void |sv_usepvn_flags|NN SV *const sv|NULLOK char* ptr|const STRLEN len\ |
1916 | |const U32 flags | |
66ceb532 | 1917 | Apd |void |sv_vcatpvfn |NN SV *const sv|NN const char *const pat|const STRLEN patlen \ |
ea4817b1 | 1918 | |NULLOK va_list *const args|NULLOK SV **const svargs|const Size_t sv_count \ |
66ceb532 | 1919 | |NULLOK bool *const maybe_tainted |
4bac9ae4 | 1920 | Apd |void |sv_vcatpvfn_flags|NN SV *const sv|NN const char *const pat|const STRLEN patlen \ |
ea4817b1 | 1921 | |NULLOK va_list *const args|NULLOK SV **const svargs|const Size_t sv_count \ |
4bac9ae4 | 1922 | |NULLOK bool *const maybe_tainted|const U32 flags |
66ceb532 SS |
1923 | Apd |void |sv_vsetpvfn |NN SV *const sv|NN const char *const pat|const STRLEN patlen \ |
1924 | |NULLOK va_list *const args|NULLOK SV **const svargs \ | |
ea4817b1 | 1925 | |const Size_t sv_count|NULLOK bool *const maybe_tainted |
ce9aa77f | 1926 | CpR |NV |str_to_version |NN SV *sv |
dd14162d KW |
1927 | Ap |void |regdump |NN const regexp* r |
1928 | CiTop |struct regexp *|ReANY |NN const REGEXP * const re | |
d771dca8 | 1929 | Apdh |I32 |pregexec |NN REGEXP * const prog|NN char* stringarg \ |
dd14162d KW |
1930 | |NN char* strend|NN char* strbeg \ |
1931 | |SSize_t minend |NN SV* screamer|U32 nosave | |
1932 | Ap |void |pregfree |NULLOK REGEXP* r | |
0f81c2fe | 1933 | Cp |void |pregfree2 |NN REGEXP *rx |
dd14162d KW |
1934 | : FIXME - is anything in re using this now? |
1935 | EXp |REGEXP*|reg_temp_copy |NULLOK REGEXP* dsv|NN REGEXP* ssv | |
0f81c2fe | 1936 | Cp |void |regfree_internal|NN REGEXP *const rx |
dd14162d | 1937 | #if defined(USE_ITHREADS) |
0f81c2fe | 1938 | Cp |void* |regdupe_internal|NN REGEXP * const r|NN CLONE_PARAMS* param |
a9269870 | 1939 | #endif |
dd14162d | 1940 | EXp |regexp_engine const *|current_re_engine |
d771dca8 | 1941 | Apdh |REGEXP*|pregcomp |NN SV * const pattern|const U32 flags |
dd14162d KW |
1942 | p |REGEXP*|re_op_compile |NULLOK SV ** const patternp \ |
1943 | |int pat_count|NULLOK OP *expr \ | |
1944 | |NN const regexp_engine* eng \ | |
1945 | |NULLOK REGEXP *old_re \ | |
1946 | |NULLOK bool *is_bare_re \ | |
1947 | |const U32 rx_flags|const U32 pm_flags | |
1948 | Ap |REGEXP*|re_compile |NN SV * const pattern|U32 orig_rx_flags | |
1949 | Cp |char* |re_intuit_start|NN REGEXP * const rx \ | |
1950 | |NULLOK SV* sv \ | |
1951 | |NN const char* const strbeg \ | |
1952 | |NN char* strpos \ | |
1953 | |NN char* strend \ | |
1954 | |const U32 flags \ | |
1955 | |NULLOK re_scream_pos_data *data | |
1956 | Cp |SV* |re_intuit_string|NN REGEXP *const r | |
d8ccb038 | 1957 | Cp |I32 |regexec_flags |NN REGEXP *const rx|NN char *stringarg \ |
dd14162d KW |
1958 | |NN char *strend|NN char *strbeg \ |
1959 | |SSize_t minend|NN SV *sv \ | |
1960 | |NULLOK void *data|U32 flags | |
1961 | ApR |regnode*|regnext |NULLOK regnode* p | |
1962 | EXp |SV*|reg_named_buff |NN REGEXP * const rx|NULLOK SV * const key \ | |
1963 | |NULLOK SV * const value|const U32 flags | |
1964 | EXp |SV*|reg_named_buff_iter |NN REGEXP * const rx|NULLOK const SV * const lastkey \ | |
1965 | |const U32 flags | |
bddd744b KW |
1966 | Cp |SV*|reg_named_buff_fetch |NN REGEXP * const rx|NN SV * const namesv|const U32 flags |
1967 | Cp |bool|reg_named_buff_exists |NN REGEXP * const rx|NN SV * const key|const U32 flags | |
1968 | Cp |SV*|reg_named_buff_firstkey |NN REGEXP * const rx|const U32 flags | |
1969 | Cp |SV*|reg_named_buff_nextkey |NN REGEXP * const rx|const U32 flags | |
1970 | Cp |SV*|reg_named_buff_scalar |NN REGEXP * const rx|const U32 flags | |
1971 | Cp |SV*|reg_named_buff_all |NN REGEXP * const rx|const U32 flags | |
dd14162d KW |
1972 | |
1973 | : FIXME - is anything in re using this now? | |
1974 | EXp |void|reg_numbered_buff_fetch|NN REGEXP * const rx|const I32 paren|NULLOK SV * const sv | |
1975 | : FIXME - is anything in re using this now? | |
1976 | EXp |void|reg_numbered_buff_store|NN REGEXP * const rx|const I32 paren|NULLOK SV const * const value | |
1977 | : FIXME - is anything in re using this now? | |
1978 | EXp |I32|reg_numbered_buff_length|NN REGEXP * const rx|NN const SV * const sv|const I32 paren | |
1979 | ||
1980 | : FIXME - is anything in re using this now? | |
1981 | EXp |SV*|reg_qr_package|NN REGEXP * const rx | |
be879013 KW |
1982 | EXpRT |I16 |do_uniprop_match|NN const char * const key|const U16 key_len |
1983 | EXpRT |const char * const *|get_prop_values|const int table_index | |
1984 | EXpR |SV * |get_prop_definition|const int table_index | |
1985 | EXpRT |const char *|get_deprecated_property_msg|const Size_t warning_offset | |
a9269870 | 1986 | #if defined(PERL_IN_REGCOMP_C) |
09f3c061 | 1987 | EiRT |bool |invlist_is_iterating|NN SV* const invlist |
a9269870 KW |
1988 | EiR |SV* |invlist_contents|NN SV* const invlist \ |
1989 | |const bool traditional_style | |
332f44b7 | 1990 | EixRT |UV |invlist_lowest|NN SV* const invlist |
9f589e47 | 1991 | ESRT |bool |new_regcurly |NN const char *s|NN const char *e |
24ad3c33 KW |
1992 | ERS |SV* |make_exactf_invlist |NN RExC_state_t *pRExC_state \ |
1993 | |NN regnode *node | |
dd14162d KW |
1994 | ES |regnode_offset|reg |NN RExC_state_t *pRExC_state \ |
1995 | |I32 paren|NN I32 *flagp|U32 depth | |
1996 | ES |regnode_offset|regnode_guts|NN RExC_state_t *pRExC_state \ | |
1997 | |const U8 op \ | |
1998 | |const STRLEN extra_len \ | |
1999 | |NN const char* const name | |
2000 | ES |void |change_engine_size|NN RExC_state_t *pRExC_state|const Ptrdiff_t size | |
2001 | ES |regnode_offset|reganode|NN RExC_state_t *pRExC_state|U8 op \ | |
2002 | |U32 arg | |
2003 | ES |regnode_offset|regpnode|NN RExC_state_t *pRExC_state|U8 op \ | |
d3e3ece8 | 2004 | |NN SV * arg |
dd14162d KW |
2005 | ES |regnode_offset|reg2Lanode|NN RExC_state_t *pRExC_state \ |
2006 | |const U8 op \ | |
2007 | |const U32 arg1 \ | |
2008 | |const I32 arg2 | |
2009 | ES |regnode_offset|regatom |NN RExC_state_t *pRExC_state \ | |
2010 | |NN I32 *flagp|U32 depth | |
2011 | ES |regnode_offset|regbranch |NN RExC_state_t *pRExC_state \ | |
2012 | |NN I32 *flagp|I32 first|U32 depth | |
2013 | ES |void |set_ANYOF_arg |NN RExC_state_t* const pRExC_state \ | |
2014 | |NN regnode* const node \ | |
2015 | |NULLOK SV* const cp_list \ | |
2016 | |NULLOK SV* const runtime_defns \ | |
2017 | |NULLOK SV* const only_utf8_locale_list | |
2018 | ES |void |output_posix_warnings \ | |
2019 | |NN RExC_state_t *pRExC_state \ | |
2020 | |NN AV* posix_warnings | |
2021 | EiT |Size_t |find_first_differing_byte_pos|NN const U8 * s1|NN const U8 * s2| const Size_t max | |
2022 | ES |AV* |add_multi_match|NULLOK AV* multi_char_matches \ | |
2023 | |NN SV* multi_string \ | |
2024 | |const STRLEN cp_count | |
2025 | ES |regnode_offset|regclass|NN RExC_state_t *pRExC_state \ | |
2026 | |NN I32 *flagp|U32 depth|const bool stop_at_1 \ | |
2027 | |bool allow_multi_fold \ | |
2028 | |const bool silence_non_portable \ | |
2029 | |const bool strict \ | |
2030 | |bool optimizable \ | |
2031 | |NULLOK SV** ret_invlist | |
be879013 KW |
2032 | ES |SV * |parse_uniprop_string|NN const char * const name \ |
2033 | |Size_t name_len \ | |
2034 | |const bool is_utf8 \ | |
2035 | |const bool to_fold \ | |
2036 | |const bool runtime \ | |
2037 | |const bool deferrable \ | |
cc06e157 | 2038 | |NULLOK AV ** strings \ |
be879013 KW |
2039 | |NN bool * user_defined_ptr \ |
2040 | |NN SV * msg \ | |
2041 | |const STRLEN level | |
2042 | ES |SV * |handle_user_defined_property|NN const char * name \ | |
2043 | |const STRLEN name_len \ | |
2044 | |const bool is_utf8 \ | |
2045 | |const bool to_fold \ | |
2046 | |const bool runtime \ | |
2047 | |const bool deferrable \ | |
2048 | |NN SV* contents \ | |
2049 | |NN bool *user_defined_ptr \ | |
2050 | |NN SV * msg \ | |
2051 | |const STRLEN level | |
51bd1941 | 2052 | ERS |REGEXP*|compile_wildcard|NN const char * subpattern|const STRLEN len\ |
be879013 KW |
2053 | |const bool ignore_case |
2054 | ES |I32 |execute_wildcard|NN REGEXP * const prog|NN char* stringarg \ | |
2055 | |NN char* strend|NN char* strbeg \ | |
2056 | |SSize_t minend |NN SV* screamer|U32 nosave | |
b1a91f30 KW |
2057 | ES |bool |handle_names_wildcard \ |
2058 | |NN const char * wname \ | |
2059 | |const STRLEN wname_len \ | |
cc06e157 KW |
2060 | |NN SV ** prop_definition \ |
2061 | |NN AV ** strings | |
dd14162d KW |
2062 | ES |void|add_above_Latin1_folds|NN RExC_state_t *pRExC_state|const U8 cp \ |
2063 | |NN SV** invlist | |
19bb2455 | 2064 | ES |regnode_offset|handle_named_backref|NN RExC_state_t *pRExC_state \ |
dd14162d KW |
2065 | |NN I32 *flagp \ |
2066 | |NN char * parse_start \ | |
2067 | |char ch | |
2068 | ESTR |unsigned int|regex_set_precedence|const U8 my_operator | |
2069 | ES |regnode_offset|handle_regex_sets|NN RExC_state_t *pRExC_state \ | |
2070 | |NULLOK SV ** return_invlist \ | |
2071 | |NN I32 *flagp|U32 depth \ | |
2072 | |NN char * const oregcomp_parse | |
2073 | ES |void |set_regex_pv |NN RExC_state_t *pRExC_state|NN REGEXP *Rx | |
2074 | # if defined(DEBUGGING) && defined(ENABLE_REGEX_SETS_DEBUGGING) | |
2075 | ES |void |dump_regex_sets_structures \ | |
2076 | |NN RExC_state_t *pRExC_state \ | |
2077 | |NN AV * stack \ | |
2078 | |const IV fence|NN AV * fence_stack | |
2079 | # endif | |
2080 | ES |void|parse_lparen_question_flags|NN RExC_state_t *pRExC_state | |
2081 | ES |regnode_offset|reg_node|NN RExC_state_t *pRExC_state|U8 op | |
2082 | ES |regnode_offset|regpiece|NN RExC_state_t *pRExC_state \ | |
2083 | |NN I32 *flagp|U32 depth | |
2084 | ES |bool |grok_bslash_N |NN RExC_state_t *pRExC_state \ | |
2085 | |NULLOK regnode_offset* nodep \ | |
2086 | |NULLOK UV *code_point_p \ | |
2087 | |NULLOK int* cp_count \ | |
2088 | |NN I32 *flagp \ | |
2089 | |const bool strict \ | |
2090 | |const U32 depth | |
2091 | ES |void |reginsert |NN RExC_state_t *pRExC_state \ | |
2092 | |const U8 op \ | |
2093 | |const regnode_offset operand \ | |
2094 | |const U32 depth | |
2095 | ESR |bool |regtail |NN RExC_state_t * pRExC_state \ | |
2096 | |NN const regnode_offset p \ | |
2097 | |NN const regnode_offset val \ | |
2098 | |const U32 depth | |
2099 | ES |SV * |reg_scan_name |NN RExC_state_t *pRExC_state \ | |
2100 | |U32 flags | |
2101 | ES |U32 |join_exact |NN RExC_state_t *pRExC_state \ | |
2102 | |NN regnode *scan|NN UV *min_subtract \ | |
2103 | |NN bool *unfolded_multi_char \ | |
2104 | |U32 flags|NULLOK regnode *val|U32 depth | |
19bb2455 | 2105 | EST |U8 |compute_EXACTish|NN RExC_state_t *pRExC_state |
dd14162d KW |
2106 | ES |void |nextchar |NN RExC_state_t *pRExC_state |
2107 | ES |void |skip_to_be_ignored_text|NN RExC_state_t *pRExC_state \ | |
2108 | |NN char ** p \ | |
2109 | |const bool force_to_xmod | |
2110 | EiT |char * |reg_skipcomment|NN RExC_state_t *pRExC_state|NN char * p | |
2111 | ES |void |scan_commit |NN const RExC_state_t *pRExC_state \ | |
2112 | |NN struct scan_data_t *data \ | |
2113 | |NN SSize_t *minlenp \ | |
2114 | |int is_inf | |
2115 | ES |void |populate_ANYOF_from_invlist|NN regnode *node|NN SV** invlist_ptr | |
2116 | ES |void |ssc_anything |NN regnode_ssc *ssc | |
2117 | ESRT |int |ssc_is_anything|NN const regnode_ssc *ssc | |
2118 | ES |void |ssc_init |NN const RExC_state_t *pRExC_state \ | |
2119 | |NN regnode_ssc *ssc | |
2120 | ESRT |int |ssc_is_cp_posixl_init|NN const RExC_state_t *pRExC_state \ | |
2121 | |NN const regnode_ssc *ssc | |
2122 | ES |void |ssc_and |NN const RExC_state_t *pRExC_state \ | |
2123 | |NN regnode_ssc *ssc \ | |
2124 | |NN const regnode_charclass *and_with | |
2125 | ES |void |ssc_or |NN const RExC_state_t *pRExC_state \ | |
2126 | |NN regnode_ssc *ssc \ | |
2127 | |NN const regnode_charclass *or_with | |
2128 | ES |SV* |get_ANYOF_cp_list_for_ssc \ | |
2129 | |NN const RExC_state_t *pRExC_state \ | |
2130 | |NN const regnode_charclass* const node | |
19bb2455 | 2131 | ES |void |ssc_intersection|NN regnode_ssc *ssc \ |
dd14162d | 2132 | |NN SV* const invlist|const bool invert_2nd |
19bb2455 | 2133 | ES |void |ssc_union |NN regnode_ssc *ssc \ |
dd14162d | 2134 | |NN SV* const invlist|const bool invert_2nd |
19bb2455 | 2135 | ES |void |ssc_add_range |NN regnode_ssc *ssc \ |
dd14162d | 2136 | |UV const start|UV const end |
19bb2455 | 2137 | ES |void |ssc_cp_and |NN regnode_ssc *ssc \ |
dd14162d | 2138 | |UV const cp |
19bb2455 | 2139 | EST |void |ssc_clear_locale|NN regnode_ssc *ssc |
dd14162d KW |
2140 | ETS |bool |is_ssc_worth_it|NN const RExC_state_t * pRExC_state \ |
2141 | |NN const regnode_ssc * ssc | |
2142 | ES |void |ssc_finalize |NN RExC_state_t *pRExC_state \ | |
2143 | |NN regnode_ssc *ssc | |
2144 | ES |SSize_t|study_chunk |NN RExC_state_t *pRExC_state \ | |
2145 | |NN regnode **scanp|NN SSize_t *minlenp \ | |
2146 | |NN SSize_t *deltap|NN regnode *last \ | |
2147 | |NULLOK struct scan_data_t *data \ | |
2148 | |I32 stopparen|U32 recursed_depth \ | |
2149 | |NULLOK regnode_ssc *and_withp \ | |
3a1df45e | 2150 | |U32 flags|U32 depth|bool was_mutate_ok |
30228cdc | 2151 | ES |void |rck_elide_nothing|NN regnode *node |
dd14162d KW |
2152 | ESR |SV * |get_ANYOFM_contents|NN const regnode * n |
2153 | ESRT |U32 |add_data |NN RExC_state_t* const pRExC_state \ | |
2154 | |NN const char* const s|const U32 n | |
2155 | frS |void |re_croak |bool utf8|NN const char* pat|... | |
2156 | ES |int |handle_possible_posix \ | |
2157 | |NN RExC_state_t *pRExC_state \ | |
2158 | |NN const char* const s \ | |
2159 | |NULLOK char ** updated_parse_ptr \ | |
2160 | |NULLOK AV** posix_warnings \ | |
2161 | |const bool check_only | |
2162 | ES |I32 |make_trie |NN RExC_state_t *pRExC_state \ | |
2163 | |NN regnode *startbranch|NN regnode *first \ | |
2164 | |NN regnode *last|NN regnode *tail \ | |
2165 | |U32 word_count|U32 flags|U32 depth | |
2166 | ES |regnode *|construct_ahocorasick_from_trie|NN RExC_state_t *pRExC_state \ | |
2167 | |NN regnode *source|U32 depth | |
2168 | ETSR |int |edit_distance |NN const UV *src \ | |
2169 | |NN const UV *tgt \ | |
2170 | |const STRLEN x \ | |
2171 | |const STRLEN y \ | |
2172 | |const SSize_t maxDistance | |
dd14162d KW |
2173 | # ifdef DEBUGGING |
2174 | EFp |int |re_indentf |NN const char *fmt|U32 depth|... | |
2175 | ES |void |regdump_intflags|NULLOK const char *lead| const U32 flags | |
2176 | ES |void |regdump_extflags|NULLOK const char *lead| const U32 flags | |
2177 | ES |const regnode*|dumpuntil|NN const regexp *r|NN const regnode *start \ | |
2178 | |NN const regnode *node \ | |
2179 | |NULLOK const regnode *last \ | |
2180 | |NULLOK const regnode *plast \ | |
2181 | |NN SV* sv|I32 indent|U32 depth | |
2182 | ES |void |put_code_point |NN SV* sv|UV c | |
2183 | ES |bool |put_charclass_bitmap_innards|NN SV* sv \ | |
2184 | |NULLOK char* bitmap \ | |
2185 | |NULLOK SV* nonbitmap_invlist \ | |
2186 | |NULLOK SV* only_utf8_locale_invlist\ | |
2187 | |NULLOK const regnode * const node \ | |
2188 | |const U8 flags \ | |
2189 | |const bool force_as_is_display | |
2190 | ES |SV* |put_charclass_bitmap_innards_common \ | |
2191 | |NN SV* invlist \ | |
2192 | |NULLOK SV* posixes \ | |
2193 | |NULLOK SV* only_utf8 \ | |
2194 | |NULLOK SV* not_utf8 \ | |
2195 | |NULLOK SV* only_utf8_locale \ | |
2196 | |const bool invert | |
2197 | ES |void |put_charclass_bitmap_innards_invlist \ | |
2198 | |NN SV *sv \ | |
2199 | |NN SV* invlist | |
2200 | ES |void |put_range |NN SV* sv|UV start|const UV end \ | |
2201 | |const bool allow_literals | |
2202 | ES |void |dump_trie |NN const struct _reg_trie_data *trie\ | |
2203 | |NULLOK HV* widecharmap|NN AV *revcharmap\ | |
2204 | |U32 depth | |
2205 | ES |void |dump_trie_interim_list|NN const struct _reg_trie_data *trie\ | |
2206 | |NULLOK HV* widecharmap|NN AV *revcharmap\ | |
2207 | |U32 next_alloc|U32 depth | |
2208 | ES |void |dump_trie_interim_table|NN const struct _reg_trie_data *trie\ | |
2209 | |NULLOK HV* widecharmap|NN AV *revcharmap\ | |
2210 | |U32 next_alloc|U32 depth | |
2211 | ESR |bool |regtail_study |NN RExC_state_t *pRExC_state \ | |
2212 | |NN regnode_offset p|NN const regnode_offset val|U32 depth | |
2213 | # endif | |
2214 | # ifndef PERL_EXT_RE_BUILD | |
dd14162d KW |
2215 | EiRT |UV* |_invlist_array_init |NN SV* const invlist|const bool will_have_0 |
2216 | EiRT |UV |invlist_max |NN SV* const invlist | |
2217 | EiRT |IV* |get_invlist_previous_index_addr|NN SV* invlist | |
2218 | EiT |void |invlist_set_previous_index|NN SV* const invlist|const IV index | |
2219 | EiRT |IV |invlist_previous_index|NN SV* const invlist | |
2220 | EiT |void |invlist_trim |NN SV* invlist | |
2221 | Ei |void |invlist_clear |NN SV* invlist | |
2222 | ES |void |_append_range_to_invlist |NN SV* const invlist|const UV start|const UV end | |
2223 | ES |void |invlist_replace_list_destroys_src|NN SV *dest|NN SV *src | |
2224 | S |void |initialize_invlist_guts|NN SV* invlist|const Size_t initial_size | |
2225 | # endif | |
2226 | #endif | |
2227 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_DOOP_C) || defined(PERL_IN_OP_C) | |
2228 | EiR |SV* |add_cp_to_invlist |NULLOK SV* invlist|const UV cp | |
2229 | Ei |void |invlist_extend |NN SV* const invlist|const UV len | |
2230 | Ei |void |invlist_set_len|NN SV* const invlist|const UV len|const bool offset | |
2231 | EiRT |UV |invlist_highest|NN SV* const invlist | |
2232 | #endif | |
2233 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_DOOP_C) || defined(PERL_IN_OP_C) || defined(PERL_IN_UTF8_C) | |
2234 | m |void |_invlist_intersection |NN SV* const a|NN SV* const b|NN SV** i | |
2235 | EXp |void |_invlist_intersection_maybe_complement_2nd \ | |
2236 | |NULLOK SV* const a|NN SV* const b \ | |
2237 | |const bool complement_b|NN SV** i | |
2238 | Cm |void |_invlist_union |NULLOK SV* const a|NN SV* const b|NN SV** output | |
2239 | EXp |void |_invlist_union_maybe_complement_2nd \ | |
2240 | |NULLOK SV* const a|NN SV* const b \ | |
2241 | |const bool complement_b|NN SV** output | |
2242 | m |void |_invlist_subtract|NN SV* const a|NN SV* const b|NN SV** result | |
2243 | EXp |void |_invlist_invert|NN SV* const invlist | |
2244 | EXpR |SV* |_new_invlist |IV initial_size | |
2245 | EXpR |SV* |_add_range_to_invlist |NULLOK SV* invlist|UV start|UV end | |
2246 | EXpR |SV* |_setup_canned_invlist|const STRLEN size|const UV element0|NN UV** other_elements_ptr | |
2247 | #endif | |
2248 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_DQUOTE_C) || defined(PERL_IN_TOKE_C) | |
2249 | EpRX |bool |grok_bslash_x |NN char** s \ | |
2250 | |NN const char* const send \ | |
2251 | |NN UV* uv \ | |
2252 | |NN const char** message \ | |
2253 | |NULLOK U32 * packed_warn \ | |
2254 | |const bool strict \ | |
2255 | |const bool allow_UV_MAX \ | |
2256 | |const bool utf8 | |
2257 | EpRX |bool |grok_bslash_c |const char source \ | |
2258 | |NN U8 * result \ | |
2259 | |NN const char** message \ | |
2260 | |NULLOK U32 * packed_warn | |
2261 | EpRX |bool |grok_bslash_o |NN char** s \ | |
2262 | |NN const char* const send \ | |
2263 | |NN UV* uv \ | |
2264 | |NN const char** message \ | |
2265 | |NULLOK U32 * packed_warn \ | |
2266 | |const bool strict \ | |
2267 | |const bool allow_UV_MAX \ | |
2268 | |const bool utf8 | |
2269 | EpRX |const char *|form_alien_digit_msg|const U8 which \ | |
2270 | |const STRLEN valids_len \ | |
2271 | |NN const char * const first_bad\ | |
2272 | |NN const char * const send \ | |
2273 | |const bool UTF \ | |
2274 | |const bool braced | |
2275 | #endif | |
2276 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_DQUOTE_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UTF8_C) | |
2277 | EpRX |const char *|form_cp_too_large_msg|const U8 which \ | |
2278 | |NULLOK const char * string \ | |
2279 | |const Size_t len \ | |
2280 | |const UV cp | |
2281 | #endif | |
2282 | #if defined(PERL_IN_REGCOMP_C) || defined (PERL_IN_DUMP_C) || defined(PERL_IN_OP_C) | |
2283 | EXp |void |_invlist_dump |NN PerlIO *file|I32 level \ | |
2284 | |NN const char* const indent \ | |
2285 | |NN SV* const invlist | |
2286 | #endif | |
2287 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_OP_C) | |
2288 | EiRT |STRLEN*|get_invlist_iter_addr |NN SV* invlist | |
2289 | EiT |void |invlist_iterinit|NN SV* invlist | |
2290 | EiRT |bool |invlist_iternext|NN SV* invlist|NN UV* start|NN UV* end | |
2291 | EiT |void |invlist_iterfinish|NN SV* invlist | |
2292 | #endif | |
2293 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PERL_C) || defined(PERL_IN_UTF8_C) | |
2294 | EXpR |SV* |_new_invlist_C_array|NN const UV* const list | |
2295 | EXp |bool |_invlistEQ |NN SV* const a|NN SV* const b|const bool complement_b | |
2296 | #endif | |
2297 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_PP_C) || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UNIVERSAL_C) | |
2298 | EiT |const char *|get_regex_charset_name|const U32 flags|NN STRLEN* const lenp | |
2299 | #endif | |
2300 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) \ | |
2301 | || defined(PERL_IN_PP_C) || defined(PERL_IN_OP_C) \ | |
2302 | || defined(PERL_IN_TOKE_C) || defined(PERL_IN_UTF8_C) \ | |
2303 | || defined(PERL_IN_DOOP_C) | |
2304 | EiRT |UV* |invlist_array |NN SV* const invlist | |
2305 | EiRT |bool |is_invlist |NULLOK SV* const invlist | |
2306 | EiRT |bool* |get_invlist_offset_addr|NN SV* invlist | |
2307 | EiRT |UV |_invlist_len |NN SV* const invlist | |
2308 | EiRT |bool |_invlist_contains_cp|NN SV* const invlist|const UV cp | |
2309 | EXpRT |SSize_t|_invlist_search |NN SV* const invlist|const UV cp | |
2310 | #endif | |
2311 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) | |
71562af6 KW |
2312 | # ifndef PERL_EXT_RE_BUILD |
2313 | Ep |SV* |get_regclass_nonbitmap_data \ | |
2314 | |NULLOK const regexp *prog \ | |
2315 | |NN const struct regnode *node \ | |
2316 | |bool doinit \ | |
2317 | |NULLOK SV **listsvp \ | |
2318 | |NULLOK SV **lonly_utf8_locale \ | |
2319 | |NULLOK SV **output_invlist | |
2320 | # else | |
2321 | Ep |SV* |get_re_gclass_nonbitmap_data \ | |
dd14162d KW |
2322 | |NULLOK const regexp *prog \ |
2323 | |NN const struct regnode *node \ | |
2324 | |bool doinit \ | |
2325 | |NULLOK SV **listsvp \ | |
2326 | |NULLOK SV **lonly_utf8_locale \ | |
2327 | |NULLOK SV **output_invlist | |
71562af6 | 2328 | #endif |
dd14162d KW |
2329 | Ep |void |regprop |NULLOK const regexp *prog|NN SV* sv|NN const regnode* o|NULLOK const regmatch_info *reginfo \ |
2330 | |NULLOK const RExC_state_t *pRExC_state | |
2331 | Efp |int |re_printf |NN const char *fmt|... | |
2332 | #endif | |
2333 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_TOKE_C) | |
2334 | ERp |bool |is_grapheme |NN const U8 * strbeg|NN const U8 * s|NN const U8 *strend|const UV cp | |
2335 | #endif | |
2336 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) | |
2337 | EXTp |UV |_to_fold_latin1|const U8 c|NN U8 *p|NN STRLEN *lenp|const unsigned int flags | |
2338 | #endif | |
2339 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_SV_C) | |
2340 | EpX |SV* |invlist_clone |NN SV* const invlist|NULLOK SV* newlist | |
2341 | #endif | |
2342 | #if defined(PERL_IN_REGCOMP_C) || defined(PERL_IN_TOKE_C) | |
2343 | EiRT |bool |regcurly |NN const char *s | |
2344 | #endif | |
2345 | #if defined(PERL_IN_REGEXEC_C) | |
2346 | ERS |bool |isFOO_utf8_lc |const U8 classnum|NN const U8* character|NN const U8* e | |
2347 | ERTS |U8 * |find_next_masked|NN U8 * s \ | |
2348 | |NN const U8 * send \ | |
2349 | |const U8 byte|const U8 mask | |
2350 | ERTS |U8 *|find_span_end |NN U8* s|NN const U8 * send|const U8 span_byte | |
2351 | ERTS |U8 *|find_span_end_mask|NN U8 * s|NN const U8 * send \ | |
2352 | |const U8 span_byte|const U8 mask | |
2353 | ERS |SSize_t|regmatch |NN regmatch_info *reginfo|NN char *startpos|NN regnode *prog | |
2354 | WERS |I32 |regrepeat |NN regexp *prog|NN char **startposp \ | |
2355 | |NN const regnode *p \ | |
2356 | |NN char *loceol \ | |
2357 | |NN regmatch_info *const reginfo \ | |
2358 | |I32 max | |
2359 | ERS |bool |regtry |NN regmatch_info *reginfo|NN char **startposp | |
2360 | ERS |bool |reginclass |NULLOK regexp * const prog \ | |
2361 | |NN const regnode * const n \ | |
2362 | |NN const U8 * const p \ | |
2363 | |NN const U8 * const p_end \ | |
2364 | |bool const utf8_target | |
2365 | WES |CHECKPOINT|regcppush |NN const regexp *rex|I32 parenfloor\ | |
2366 | |U32 maxopenparen | |
2367 | WES |void |regcppop |NN regexp *rex|NN U32 *maxopenparen_p | |
2368 | WES |void |regcp_restore |NN regexp *rex|I32 ix|NN U32 *maxopenparen_p | |
2369 | ERST |U8* |reghop3 |NN U8 *s|SSize_t off|NN const U8 *lim | |
2370 | ERST |U8* |reghop4 |NN U8 *s|SSize_t off|NN const U8 *llim \ | |
2371 | |NN const U8 *rlim | |
2372 | ERST |U8* |reghopmaybe3 |NN U8 *s|SSize_t off|NN const U8 * const lim | |
2373 | ERS |char* |find_byclass |NN regexp * prog|NN const regnode *c \ | |
2374 | |NN char *s|NN const char *strend \ | |
2375 | |NULLOK regmatch_info *reginfo | |
2376 | ES |void |to_utf8_substr |NN regexp * prog | |
2377 | ES |bool |to_byte_substr |NN regexp * prog | |
2378 | ERST |I32 |reg_check_named_buff_matched |NN const regexp *rex \ | |
2379 | |NN const regnode *scan | |
2380 | ESR |bool |isGCB |const GCB_enum before \ | |
2381 | |const GCB_enum after \ | |
2382 | |NN const U8 * const strbeg \ | |
2383 | |NN const U8 * const curpos \ | |
2384 | |const bool utf8_target | |
2385 | ESR |GCB_enum|backup_one_GCB|NN const U8 * const strbeg \ | |
2386 | |NN U8 ** curpos \ | |
2387 | |const bool utf8_target | |
2388 | ESR |bool |isLB |LB_enum before \ | |
2389 | |LB_enum after \ | |
2390 | |NN const U8 * const strbeg \ | |
2391 | |NN const U8 * const curpos \ | |
2392 | |NN const U8 * const strend \ | |
2393 | |const bool utf8_target | |
2394 | ESR |LB_enum|advance_one_LB |NN U8 ** curpos \ | |
2395 | |NN const U8 * const strend \ | |
2396 | |const bool utf8_target | |
2397 | ESR |LB_enum|backup_one_LB |NN const U8 * const strbeg \ | |
2398 | |NN U8 ** curpos \ | |
2399 | |const bool utf8_target | |
2400 | ESR |bool |isSB |SB_enum before \ | |
2401 | |SB_enum after \ | |
2402 | |NN const U8 * const strbeg \ | |
2403 | |NN const U8 * const curpos \ | |
2404 | |NN const U8 * const strend \ | |
2405 | |const bool utf8_target | |
2406 | ESR |SB_enum|advance_one_SB |NN U8 ** curpos \ | |
2407 | |NN const U8 * const strend \ | |
2408 | |const bool utf8_target | |
2409 | ESR |SB_enum|backup_one_SB |NN const U8 * const strbeg \ | |
2410 | |NN U8 ** curpos \ | |
2411 | |const bool utf8_target | |
2412 | ESR |bool |isWB |WB_enum previous \ | |
2413 | |WB_enum before \ | |
2414 | |WB_enum after \ | |
2415 | |NN const U8 * const strbeg \ | |
2416 | |NN const U8 * const curpos \ | |
2417 | |NN const U8 * const strend \ | |
2418 | |const bool utf8_target | |
2419 | ESR |WB_enum|advance_one_WB |NN U8 ** curpos \ | |
2420 | |NN const U8 * const strend \ | |
2421 | |const bool utf8_target \ | |
2422 | |const bool skip_Extend_Format | |
2423 | ESR |WB_enum|backup_one_WB |NN WB_enum * previous \ | |
2424 | |NN const U8 * const strbeg \ | |
2425 | |NN U8 ** curpos \ | |
2426 | |const bool utf8_target | |
2427 | EiT |I32 |foldEQ_latin1_s2_folded|NN const char* a|NN const char* b|I32 len | |
2428 | # ifdef DEBUGGING | |
2429 | ES |void |dump_exec_pos |NN const char *locinput|NN const regnode *scan|NN const char *loc_regeol\ | |
2430 | |NN const char *loc_bostr|NN const char *loc_reg_starttry|const bool do_utf8|const U32 depth | |
2431 | ES |void |debug_start_match|NN const REGEXP *prog|const bool do_utf8\ | |
2432 | |NN const char *start|NN const char *end\ | |
2433 | |NN const char *blurb | |
2434 | ||
2435 | EFp |int |re_exec_indentf|NN const char *fmt|U32 depth|... | |
2436 | # endif | |
2437 | #endif | |
2438 | #if defined(PERL_IN_REGEXEC_C) || defined(PERL_IN_UTF8_C) | |
2439 | EXRp |bool |isFOO_lc |const U8 classnum|const U8 character | |
2440 | #endif | |
2441 | ||
2442 | Ap |void |taint_env | |
2443 | Ap |void |taint_proper |NULLOK const char* f|NN const char *const s | |
2444 | EXp |char * |_byte_dump_string \ | |
2445 | |NN const U8 * const start \ | |
2446 | |const STRLEN len \ | |
2447 | |const bool format | |
2448 | ||
2449 | #if defined(PERL_IN_UTF8_C) | |
2450 | iTR |int |does_utf8_overflow|NN const U8 * const s \ | |
2451 | |NN const U8 * e \ | |
2452 | |const bool consider_overlongs | |
2453 | iTR |int |is_utf8_overlong_given_start_byte_ok|NN const U8 * const s \ | |
2454 | |const STRLEN len | |
2455 | iTR |int |isFF_OVERLONG |NN const U8 * const s|const STRLEN len | |
2456 | SR |char * |unexpected_non_continuation_text \ | |
2457 | |NN const U8 * const s \ | |
2458 | |STRLEN print_len \ | |
2459 | |const STRLEN non_cont_byte_pos \ | |
2460 | |const STRLEN expect_len | |
2461 | #if 0 /* Not currently used, but may be needed in the future */ | |
2462 | S |void |warn_on_first_deprecated_use \ | |
2463 | |NN const char * const name \ | |
2464 | |NN const char * const alternative \ | |
2465 | |const bool use_locale \ | |
2466 | |NN const char * const file \ | |
2467 | |const unsigned line | |
2468 | #endif | |
2469 | S |UV |_to_utf8_case |const UV uv1 \ | |
2470 | |NULLOK const U8 *p \ | |
2471 | |NN U8* ustrp \ | |
2472 | |NN STRLEN *lenp \ | |
2473 | |NN SV *invlist \ | |
2474 | |NN const I32 * const invmap \ | |
2475 | |NULLOK const U32 * const * const aux_tables \ | |
8946fcd9 KW |
2476 | |NULLOK const U8 * const aux_table_lengths \ |
2477 | |NN const char * const normal | |
9f589e47 KW |
2478 | S |UV |turkic_fc |NN const U8 * const p |NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp |
2479 | S |UV |turkic_lc |NN const U8 * const p0|NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp | |
2480 | S |UV |turkic_uc |NN const U8 * const p |NN const U8 * const e|NN U8* ustrp|NN STRLEN *lenp | |
b9992569 | 2481 | #endif |
09232555 | 2482 | Cp |UV |_to_utf8_lower_flags|NN const U8 *p|NULLOK const U8* e \ |
059703b0 | 2483 | |NN U8* ustrp|NULLOK STRLEN *lenp|bool flags |
09232555 | 2484 | Cp |UV |_to_utf8_upper_flags |NN const U8 *p|NULLOK const U8 *e \ |
059703b0 | 2485 | |NN U8* ustrp|NULLOK STRLEN *lenp|bool flags |
09232555 | 2486 | Cp |UV |_to_utf8_title_flags |NN const U8 *p|NULLOK const U8* e \ |
059703b0 | 2487 | |NN U8* ustrp|NULLOK STRLEN *lenp|bool flags |
09232555 | 2488 | Cp |UV |_to_utf8_fold_flags|NN const U8 *p|NULLOK const U8 *e \ |
059703b0 | 2489 | |NN U8* ustrp|NULLOK STRLEN *lenp|U8 flags |
83f78d1a | 2490 | #if defined(PERL_IN_MG_C) || defined(PERL_IN_PP_C) |
45b29440 | 2491 | pT |bool |translate_substr_offsets|STRLEN curlen|IV pos1_iv \ |
83f78d1a FC |
2492 | |bool pos1_is_uv|IV len_iv \ |
2493 | |bool len_is_uv|NN STRLEN *posp \ | |
2494 | |NN STRLEN *lenp | |
2495 | #endif | |
94bdecf9 | 2496 | #if defined(UNLINK_ALL_VERSIONS) |
78097f58 | 2497 | Cp |I32 |unlnk |NN const char* f |
94bdecf9 | 2498 | #endif |
57f51a64 | 2499 | AbpdD |SSize_t|unpack_str |NN const char *pat|NN const char *patend|NN const char *s \ |
aec46f14 AL |
2500 | |NULLOK const char *strbeg|NN const char *strend|NULLOK char **new_s \ |
2501 | |I32 ocnt|U32 flags | |
e1b825c1 | 2502 | Apd |SSize_t|unpackstring |NN const char *pat|NN const char *patend|NN const char *s \ |
aec46f14 AL |
2503 | |NN const char *strend|U32 flags |
2504 | Ap |void |unsharepvn |NULLOK const char* sv|I32 len|U32 hash | |
67022846 | 2505 | : Used in gv.c, hv.c |
78197f2f | 2506 | p |void |unshare_hek |NULLOK HEK* hek |
67022846 | 2507 | : Used in perly.y |
aec46f14 | 2508 | p |void |utilize |int aver|I32 floor|NULLOK OP* version|NN OP* idop|NULLOK OP* arg |
09232555 | 2509 | Cp |void |_force_out_malformed_utf8_message \ |
9cbfb8ab KW |
2510 | |NN const U8 *const p|NN const U8 * const e|const U32 flags \ |
2511 | |const bool die_here | |
f46dcac2 KW |
2512 | EXp |U8* |utf16_to_utf8 |NN U8* p|NN U8 *d|Size_t bytelen|NN Size_t *newlen |
2513 | EXp |U8* |utf16_to_utf8_reversed|NN U8* p|NN U8 *d|Size_t bytelen|NN Size_t *newlen | |
622f12e7 | 2514 | AdpR |STRLEN |utf8_length |NN const U8* s|NN const U8 *e |
cfe24c19 | 2515 | AipdR |IV |utf8_distance |NN const U8 *a|NN const U8 *b |
45b29440 KW |
2516 | AipdRT |U8* |utf8_hop |NN const U8 *s|SSize_t off |
2517 | AipdRT |U8* |utf8_hop_back|NN const U8 *s|SSize_t off|NN const U8 *start | |
2518 | AipdRT |U8* |utf8_hop_forward|NN const U8 *s|SSize_t off|NN const U8 *end | |
2519 | AipdRT |U8* |utf8_hop_safe |NN const U8 *s|SSize_t off|NN const U8 *start|NN const U8 *end | |
e4aeb12f | 2520 | Apxd |U8* |utf8_to_bytes |NN U8 *s|NN STRLEN *lenp |
fed3ba5d NC |
2521 | Apd |int |bytes_cmp_utf8 |NN const U8 *b|STRLEN blen|NN const U8 *u \ |
2522 | |STRLEN ulen | |
54c193ae | 2523 | AMxdp |U8* |bytes_from_utf8|NN const U8 *s|NN STRLEN *lenp|NN bool *is_utf8p |
8505db87 | 2524 | CxTdp |U8* |bytes_from_utf8_loc|NN const U8 *s \ |
976c1b08 KW |
2525 | |NN STRLEN *lenp \ |
2526 | |NN bool *is_utf8p \ | |
2527 | |NULLOK const U8 ** first_unconverted | |
e4aeb12f | 2528 | Apxd |U8* |bytes_to_utf8 |NN const U8 *s|NN STRLEN *lenp |
86a5062a | 2529 | ApdDb |UV |utf8_to_uvchr |NN const U8 *s|NULLOK STRLEN *retlen |
09232555 KW |
2530 | CbpdD |UV |utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen |
2531 | CbpD |UV |valid_utf8_to_uvuni |NN const U8 *s|NULLOK STRLEN *retlen | |
54c193ae | 2532 | AMpd |UV |utf8_to_uvchr_buf |NN const U8 *s|NN const U8 *send|NULLOK STRLEN *retlen |
9a9a6c98 | 2533 | Cip |UV |utf8_to_uvchr_buf_helper|NN const U8 *s|NN const U8 *send|NULLOK STRLEN *retlen |
09232555 | 2534 | CpdD |UV |utf8_to_uvuni_buf |NN const U8 *s|NN const U8 *send|NULLOK STRLEN *retlen |
09f3c061 | 2535 | p |bool |check_utf8_print |NN const U8 *s|const STRLEN len |
1754c1a1 | 2536 | |
54c193ae | 2537 | AdMTp |UV |utf8n_to_uvchr |NN const U8 *s \ |
f9380377 KW |
2538 | |STRLEN curlen \ |
2539 | |NULLOK STRLEN *retlen \ | |
2540 | |const U32 flags | |
54c193ae | 2541 | AdMTp |UV |utf8n_to_uvchr_error|NN const U8 *s \ |
f9380377 KW |
2542 | |STRLEN curlen \ |
2543 | |NULLOK STRLEN *retlen \ | |
2544 | |const U32 flags \ | |
2545 | |NULLOK U32 * errors | |
c41dd2c4 | 2546 | ATdip |UV |utf8n_to_uvchr_msgs|NN const U8 *s \ |
e6a4ffc3 KW |
2547 | |STRLEN curlen \ |
2548 | |NULLOK STRLEN *retlen \ | |
2549 | |const U32 flags \ | |
2550 | |NULLOK U32 * errors \ | |
2551 | |NULLOK AV ** msgs | |
09232555 | 2552 | CTp |UV |_utf8n_to_uvchr_msgs_helper \ |
e6a4ffc3 | 2553 | |NN const U8 *s \ |
37657a5b KW |
2554 | |STRLEN curlen \ |
2555 | |NULLOK STRLEN *retlen \ | |
2556 | |const U32 flags \ | |
2557 | |NULLOK U32 * errors \ | |
2558 | |NULLOK AV ** msgs | |
09232555 | 2559 | CipTRd |UV |valid_utf8_to_uvchr |NN const U8 *s|NULLOK STRLEN *retlen |
86a5062a | 2560 | CdbDp |UV |utf8n_to_uvuni|NN const U8 *s|STRLEN curlen|NULLOK STRLEN *retlen|U32 flags |
1754c1a1 | 2561 | |
de69f3af | 2562 | Adm |U8* |uvchr_to_utf8 |NN U8 *d|UV uv |
09232555 | 2563 | Cp |U8* |uvuni_to_utf8 |NN U8 *d|UV uv |
de69f3af | 2564 | Adm |U8* |uvchr_to_utf8_flags |NN U8 *d|UV uv|UV flags |
c41dd2c4 | 2565 | Adm |U8* |uvchr_to_utf8_flags_msgs|NN U8 *d|UV uv|UV flags|NULLOK HV ** msgs |
917b9b54 | 2566 | CMpd |U8* |uvoffuni_to_utf8_flags |NN U8 *d|UV uv|const UV flags |
09232555 | 2567 | Cp |U8* |uvoffuni_to_utf8_flags_msgs|NN U8 *d|UV uv|const UV flags|NULLOK HV** msgs |
86a5062a | 2568 | CdpbD |U8* |uvuni_to_utf8_flags |NN U8 *d|UV uv|UV flags |
7827dc65 AL |
2569 | Apd |char* |pv_uni_display |NN SV *dsv|NN const U8 *spv|STRLEN len|STRLEN pvlim|UV flags |
2570 | ApdR |char* |sv_uni_display |NN SV *dsv|NN SV *ssv|STRLEN pvlim|UV flags | |
e39a4130 | 2571 | EXpR |Size_t |_inverse_folds |const UV cp \ |
1b292063 | 2572 | |NN U32 * first_folds_to \ |
40d2776f | 2573 | |NN const U32 ** remaining_folds_to |
d67fec57 | 2574 | : Used by Data::Alias |
6d9a2efc | 2575 | EXp |void |vivify_defelem |NN SV* sv |
67022846 | 2576 | : Used in pp.c |
9026059d | 2577 | pR |SV* |vivify_ref |NN SV* sv|U32 to_what |
67022846 | 2578 | : Used in pp_sys.c |
aec46f14 | 2579 | p |I32 |wait4pid |Pid_t pid|NN int* statusp|int flags |
67022846 | 2580 | : Used in locale.c and perl.c |
7827dc65 | 2581 | p |U32 |parse_unicode_opts|NN const char **popt |
0a87c459 | 2582 | Ap |U32 |seed |
45b29440 KW |
2583 | XpTo |double |drand48_r |NN perl_drand48_t *random_state |
2584 | XpTo |void |drand48_init_r |NN perl_drand48_t *random_state|U32 seed | |
67022846 | 2585 | : Only used in perl.c |
e950ecba | 2586 | p |void |get_hash_seed |NN unsigned char * const seed_buffer |
67022846 | 2587 | : Used in doio.c, pp_hot.c, pp_sys.c |
831e4cc3 | 2588 | p |void |report_evil_fh |NULLOK const GV *gv |
a5390457 NC |
2589 | : Used in doio.c, pp_hot.c, pp_sys.c |
2590 | p |void |report_wrongway_fh|NULLOK const GV *gv|const char have | |
67022846 | 2591 | : Used in mg.c, pp.c, pp_hot.c, regcomp.c |
b3dbd76e | 2592 | XEpd |void |report_uninit |NULLOK const SV *uninit_sv |
156d738f FC |
2593 | #if defined(PERL_IN_OP_C) || defined(PERL_IN_SV_C) |
2594 | p |void |report_redefined_cv|NN const SV *name \ | |
2595 | |NN const CV *old_cv \ | |
2596 | |NULLOK SV * const *new_const_svp | |
2597 | #endif | |
c5df3096 | 2598 | Apd |void |warn_sv |NN SV *baseex |
aec46f14 | 2599 | Afpd |void |warn |NN const char* pat|... |
c5df3096 | 2600 | Apd |void |vwarn |NN const char* pat|NULLOK va_list* args |
3b4eef1c KW |
2601 | Adfp |void |warner |U32 err|NN const char* pat|... |
2602 | Adfp |void |ck_warner |U32 err|NN const char* pat|... | |
2603 | Adfp |void |ck_warner_d |U32 err|NN const char* pat|... | |
2604 | Adp |void |vwarner |U32 err|NN const char* pat|NULLOK va_list* args | |
470dd224 JH |
2605 | #ifdef USE_C_BACKTRACE |
2606 | pd |Perl_c_backtrace*|get_c_backtrace|int max_depth|int skip | |
2607 | dm |void |free_c_backtrace|NN Perl_c_backtrace* bt | |
2608 | Apd |SV* |get_c_backtrace_dump|int max_depth|int skip | |
2609 | Apd |bool |dump_c_backtrace|NN PerlIO* fp|int max_depth|int skip | |
2610 | #endif | |
67022846 | 2611 | : FIXME |
aec46f14 | 2612 | p |void |watch |NN char** addr |
ea81552b KW |
2613 | Amd |I32 |whichsig |NN const char* sig |
2614 | Apd |I32 |whichsig_sv |NN SV* sigsv | |
2615 | Apd |I32 |whichsig_pv |NN const char* sig | |
2616 | Apd |I32 |whichsig_pvn |NN const char* sig|STRLEN len | |
c8028aa6 | 2617 | : used to check for NULs in pathnames and other names |
c9182d9c | 2618 | AiRdp |bool |is_safe_syscall|NN const char *pv|STRLEN len|NN const char *what|NN const char *op_name |
81f54ac7 | 2619 | #ifdef PERL_CORE |
45b29440 | 2620 | iTR |bool |should_warn_nl|NN const char *pv |
81f54ac7 | 2621 | #endif |
67022846 | 2622 | : Used in pp_ctl.c |
7d0994e0 | 2623 | p |void |write_to_stderr|NN SV* msv |
67022846 | 2624 | : Used in op.c |
15f169a1 | 2625 | p |int |yyerror |NN const char *const s |
d43328d5 | 2626 | p |void |yyquit |
cc8b45bd | 2627 | pr |void |abort_execution|NN const char * const msg|NN const char * const name |
19c62481 | 2628 | p |int |yyerror_pv |NN const char *const s|U32 flags |
68da2a65 | 2629 | p |int |yyerror_pvn |NULLOK const char *const s|STRLEN len|U32 flags |
d67fec57 | 2630 | : Used in perly.y, and by Data::Alias |
6d9a2efc | 2631 | EXp |int |yylex |
28ac2b49 | 2632 | p |void |yyunlex |
67022846 | 2633 | : Used in perl.c, pp_ctl.c |
28ac2b49 | 2634 | p |int |yyparse |int gramtype |
67022846 | 2635 | : Only used in scope.c |
734c2451 | 2636 | p |void |parser_free |NN const yy_parser *parser |
3ac7ff8f FC |
2637 | #ifdef PERL_CORE |
2638 | p |void |parser_free_nexttoke_ops|NN yy_parser *parser \ | |
2639 | |NN OPSLAB *slab | |
2640 | #endif | |
43869a0c | 2641 | #if defined(PERL_IN_TOKE_C) |
9f589e47 | 2642 | S |int |yywarn |NN const char *const s|U32 flags |
af41e527 | 2643 | #endif |
94bdecf9 | 2644 | #if defined(MYMALLOC) |
6e9b0e18 | 2645 | Ap |void |dump_mstats |NN const char* s |
ec1aec95 | 2646 | Ap |int |get_mstats |NN perl_mstats_t *buf|int buflen|int level |
94bdecf9 | 2647 | #endif |
45b29440 KW |
2648 | ATpa |Malloc_t|safesysmalloc |MEM_SIZE nbytes |
2649 | ATpa |Malloc_t|safesyscalloc |MEM_SIZE elements|MEM_SIZE size | |
2650 | ATpR |Malloc_t|safesysrealloc|Malloc_t where|MEM_SIZE nbytes | |
2651 | ATp |Free_t |safesysfree |Malloc_t where | |
d68c938a | 2652 | CrTp |void |croak_memory_wrap |
94bdecf9 JH |
2653 | Ap |int |runops_standard |
2654 | Ap |int |runops_debug | |
66ceb532 SS |
2655 | Afpd |void |sv_catpvf_mg |NN SV *const sv|NN const char *const pat|... |
2656 | Apd |void |sv_vcatpvf_mg |NN SV *const sv|NN const char *const pat \ | |
2657 | |NULLOK va_list *const args | |
2b021c53 | 2658 | Apd |void |sv_catpv_mg |NN SV *const sv|NULLOK const char *const ptr |
b719801d KW |
2659 | ApdbM |void |sv_catpvn_mg |NN SV *sv|NN const char *ptr|STRLEN len |
2660 | ApdbM |void |sv_catsv_mg |NN SV *dsv|NULLOK SV *ssv | |
89e38212 SS |
2661 | Afpd |void |sv_setpvf_mg |NN SV *const sv|NN const char *const pat|... |
2662 | Apd |void |sv_vsetpvf_mg |NN SV *const sv|NN const char *const pat \ | |
2663 | |NULLOK va_list *const args | |
aad570aa | 2664 | Apd |void |sv_setiv_mg |NN SV *const sv|const IV i |
57f51a64 | 2665 | ApdbD |void |sv_setpviv_mg |NN SV *const sv|const IV iv |
aad570aa SS |
2666 | Apd |void |sv_setuv_mg |NN SV *const sv|const UV u |
2667 | Apd |void |sv_setnv_mg |NN SV *const sv|const NV num | |
2e000ff2 SS |
2668 | Apd |void |sv_setpv_mg |NN SV *const sv|NULLOK const char *const ptr |
2669 | Apd |void |sv_setpvn_mg |NN SV *const sv|NN const char *const ptr|const STRLEN len | |
7bc54cea | 2670 | Apd |void |sv_setsv_mg |NN SV *const dstr|NULLOK SV *const sstr |
b719801d | 2671 | ApdbM |void |sv_usepvn_mg |NN SV *sv|NULLOK char *ptr|STRLEN len |
aec46f14 | 2672 | ApR |MGVTBL*|get_vtbl |int vtbl_id |
3df15adc | 2673 | Apd |char* |pv_display |NN SV *dsv|NN const char *pv|STRLEN cur|STRLEN len \ |
94bdecf9 | 2674 | |STRLEN pvlim |
4420a417 | 2675 | Apd |char* |pv_escape |NULLOK SV *dsv|NN char const * const str\ |
ab3bbdeb YO |
2676 | |const STRLEN count|const STRLEN max\ |
2677 | |NULLOK STRLEN * const escaped\ | |
dd14162d | 2678 | |const U32 flags |
e950ecba | 2679 | Apd |char* |pv_pretty |NN SV *dsv|NN char const * const str\ |
ab3bbdeb | 2680 | |const STRLEN count|const STRLEN max\ |
ddc5bc0f YO |
2681 | |NULLOK char const * const start_color\ |
2682 | |NULLOK char const * const end_color\ | |
dd14162d | 2683 | |const U32 flags |
aec46f14 AL |
2684 | Afp |void |dump_indent |I32 level|NN PerlIO *file|NN const char* pat|... |
2685 | Ap |void |dump_vindent |I32 level|NN PerlIO *file|NN const char* pat \ | |
2686 | |NULLOK va_list *args | |
b4390064 NC |
2687 | Ap |void |do_gv_dump |I32 level|NN PerlIO *file|NN const char *name\ |
2688 | |NULLOK GV *sv | |
2689 | Ap |void |do_gvgv_dump |I32 level|NN PerlIO *file|NN const char *name\ | |
2690 | |NULLOK GV *sv | |
4c31e473 NC |
2691 | Ap |void |do_hv_dump |I32 level|NN PerlIO *file|NN const char *name\ |
2692 | |NULLOK HV *sv | |
3dc78631 | 2693 | Ap |void |do_magic_dump |I32 level|NN PerlIO *file|NULLOK const MAGIC *mg|I32 nest \ |
94bdecf9 | 2694 | |I32 maxnest|bool dumpops|STRLEN pvlim |
aec46f14 AL |
2695 | Ap |void |do_op_dump |I32 level|NN PerlIO *file|NULLOK const OP *o |
2696 | Ap |void |do_pmop_dump |I32 level|NN PerlIO *file|NULLOK const PMOP *pm | |
1b6737cc | 2697 | Ap |void |do_sv_dump |I32 level|NN PerlIO *file|NULLOK SV *sv|I32 nest \ |
94bdecf9 | 2698 | |I32 maxnest|bool dumpops|STRLEN pvlim |
1b6737cc | 2699 | Ap |void |magic_dump |NULLOK const MAGIC *mg |
94bdecf9 | 2700 | Ap |void |reginitcolors |
16376614 KW |
2701 | CpdRMb |char* |sv_2pv_nolen |NN SV* sv |
2702 | CpdRMb |char* |sv_2pvutf8_nolen|NN SV* sv | |
2703 | CpdRMb |char* |sv_2pvbyte_nolen|NN SV* sv | |
2704 | CpMdbR |char* |sv_pv |NN SV *sv | |
2705 | CpMdbR |char* |sv_pvutf8 |NN SV *sv | |
2706 | CpMdbR |char* |sv_pvbyte |NN SV *sv | |
b719801d | 2707 | ApMdb |STRLEN |sv_utf8_upgrade|NN SV *sv |
6a71721d | 2708 | Amd |STRLEN |sv_utf8_upgrade_nomg|NN SV *sv |
b719801d | 2709 | ApdMb |bool |sv_utf8_downgrade|NN SV *const sv|const bool fail_ok |
423ce623 P |
2710 | Amd |bool |sv_utf8_downgrade_nomg|NN SV *const sv|const bool fail_ok |
2711 | Apd |bool |sv_utf8_downgrade_flags|NN SV *const sv|const bool fail_ok|const U32 flags | |
7bc54cea | 2712 | Apd |void |sv_utf8_encode |NN SV *const sv |
43c6a1a7 | 2713 | Apd |bool |sv_utf8_decode |NN SV *const sv |
b719801d | 2714 | ApdMb |void |sv_force_normal|NN SV *sv |
2e000ff2 | 2715 | Apd |void |sv_force_normal_flags|NN SV *const sv|const U32 flags |
a953aca5 | 2716 | pX |SSize_t|tmps_grow_p |SSize_t ix |
2b021c53 | 2717 | Apd |SV* |sv_rvweaken |NN SV *const sv |
ae2cf9f6 | 2718 | Apd |SV* |sv_rvunweaken |NN SV *const sv |
e4aeb12f | 2719 | ATpxd |SV* |sv_get_backrefs|NN SV *const sv |
3f2f854a KW |
2720 | AiTMdp |SV * |SvREFCNT_inc |NULLOK SV *sv |
2721 | AiTMdp |SV * |SvREFCNT_inc_NN|NN SV *sv | |
2722 | AiTMdp |void |SvREFCNT_inc_void|NULLOK SV *sv | |
2723 | AiMdp |void |SvREFCNT_dec |NULLOK SV *sv | |
2724 | AiMdp |void |SvREFCNT_dec_NN|NN SV *sv | |
1bd041dc KW |
2725 | AiTp |void |SvAMAGIC_on |NN SV *sv |
2726 | AiTp |void |SvAMAGIC_off |NN SV *sv | |
67022846 | 2727 | : This is indirectly referenced by globals.c. This is somewhat annoying. |
b64e5050 | 2728 | p |int |magic_killbackrefs|NN SV *sv|NN MAGIC *mg |
46c461b5 | 2729 | Ap |OP* |newANONATTRSUB |I32 floor|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block |
0e75c27b | 2730 | Adm |CV* |newATTRSUB |I32 floor|NULLOK OP *o|NULLOK OP *proto|NULLOK OP *attrs|NULLOK OP *block |
28ef7048 | 2731 | pdX |CV* |newATTRSUB_x |I32 floor|NULLOK OP *o|NULLOK OP *proto \ |
7e68c38b | 2732 | |NULLOK OP *attrs|NULLOK OP *block \ |
e8f91c91 | 2733 | |bool o_is_gv |
50278755 | 2734 | Ap |CV * |newMYSUB |I32 floor|NN OP *o|NULLOK OP *proto \ |
eb8433b7 | 2735 | |NULLOK OP *attrs|NULLOK OP *block |
186a5ba8 | 2736 | p |CV* |newSTUB |NN GV *gv|bool fake |
67022846 | 2737 | : Used in perly.y |
46c461b5 | 2738 | p |OP * |my_attrs |NN OP *o|NULLOK OP *attrs |
94bdecf9 | 2739 | #if defined(USE_ITHREADS) |
6c047da7 YST |
2740 | ApR |PERL_CONTEXT*|cx_dup |NULLOK PERL_CONTEXT* cx|I32 ix|I32 max|NN CLONE_PARAMS* param |
2741 | ApR |PERL_SI*|si_dup |NULLOK PERL_SI* si|NN CLONE_PARAMS* param | |
346c6a29 | 2742 | ApR |ANY* |ss_dup |NN PerlInterpreter* proto_perl|NN CLONE_PARAMS* param |
6c047da7 YST |
2743 | ApR |void* |any_dup |NULLOK void* v|NN const PerlInterpreter* proto_perl |
2744 | ApR |HE* |he_dup |NULLOK const HE* e|bool shared|NN CLONE_PARAMS* param | |
2745 | ApR |HEK* |hek_dup |NULLOK HEK* e|NN CLONE_PARAMS* param | |
64991b10 | 2746 | Adp |void |re_dup_guts |NN const REGEXP *sstr|NN REGEXP *dstr \ |
288b8c02 | 2747 | |NN CLONE_PARAMS* param |
66ceb532 | 2748 | Ap |PerlIO*|fp_dup |NULLOK PerlIO *const fp|const char type|NN CLONE_PARAMS *const param |
60b22aca | 2749 | ApR |DIR* |dirp_dup |NULLOK DIR *const dp|NN CLONE_PARAMS *const param |
66ceb532 | 2750 | ApR |GP* |gp_dup |NULLOK GP *const gp|NN CLONE_PARAMS *const param |
b88ec9b8 | 2751 | ApR |MAGIC* |mg_dup |NULLOK MAGIC *mg|NN CLONE_PARAMS *const param |
43869a0c | 2752 | #if defined(PERL_IN_SV_C) |
9f589e47 | 2753 | S |SV ** |sv_dup_inc_multiple|NN SV *const *source|NN SV **dest \ |
538f2e76 | 2754 | |SSize_t items|NN CLONE_PARAMS *const param |
9f589e47 | 2755 | SR |SV* |sv_dup_common |NN const SV *const sstr \ |
d08d57ef NC |
2756 | |NN CLONE_PARAMS *const param |
2757 | #endif | |
1eb6e4ca | 2758 | ApR |SV* |sv_dup |NULLOK const SV *const sstr|NN CLONE_PARAMS *const param |
a09252eb NC |
2759 | ApR |SV* |sv_dup_inc |NULLOK const SV *const sstr \ |
2760 | |NN CLONE_PARAMS *const param | |
1eb6e4ca | 2761 | Ap |void |rvpv_dup |NN SV *const dstr|NN const SV *const sstr|NN CLONE_PARAMS *const param |
66ceb532 | 2762 | Ap |yy_parser*|parser_dup |NULLOK const yy_parser *const proto|NN CLONE_PARAMS *const param |
4674ade5 | 2763 | #endif |
346c6a29 | 2764 | ApR |PTR_TBL_t*|ptr_table_new |
1eb6e4ca SS |
2765 | ApR |void* |ptr_table_fetch|NN PTR_TBL_t *const tbl|NULLOK const void *const sv |
2766 | Ap |void |ptr_table_store|NN PTR_TBL_t *const tbl|NULLOK const void *const oldsv \ | |
2767 | |NN void *const newsv | |
2768 | Ap |void |ptr_table_split|NN PTR_TBL_t *const tbl | |
5c5ade3e | 2769 | ApD |void |ptr_table_clear|NULLOK PTR_TBL_t *const tbl |
1eb6e4ca | 2770 | Ap |void |ptr_table_free|NULLOK PTR_TBL_t *const tbl |
ddacffcf | 2771 | #if defined(HAVE_INTERP_INTERN) |
94bdecf9 JH |
2772 | Ap |void |sys_intern_clear |
2773 | Ap |void |sys_intern_init | |
fe826663 NC |
2774 | # if defined(USE_ITHREADS) |
2775 | Ap |void |sys_intern_dup |NN struct interp_intern* src|NN struct interp_intern* dst | |
2776 | # endif | |
94bdecf9 JH |
2777 | #endif |
2778 | ||
9c10ff02 KW |
2779 | : The reason for the 'u' flag is that this passes "aTHX_ x" to its callee: not |
2780 | : a legal C parameter | |
2781 | Admu |const XOP * |Perl_custom_op_xop |NN const OP *o | |
57f51a64 KW |
2782 | AbpRdD |const char * |custom_op_name |NN const OP *o |
2783 | AbpRdD |const char * |custom_op_desc |NN const OP *o | |
ae103e09 | 2784 | pRX |XOPRETANY |custom_op_get_field |NN const OP *o|const xop_flags_enum field |
c1a02cca | 2785 | Adop |void |custom_op_register |NN Perl_ppaddr_t ppaddr \ |
1830b3d9 | 2786 | |NN const XOP *xop |
94bdecf9 | 2787 | |
11675f52 | 2788 | Adp |void |sv_nosharing |NULLOK SV *sv |
57f51a64 | 2789 | AdpbD |void |sv_nolocking |NULLOK SV *sv |
eba16661 | 2790 | Adp |bool |sv_destroyable |NULLOK SV *sv |
57f51a64 | 2791 | AdpbD |void |sv_nounlocking |NULLOK SV *sv |
62375a60 | 2792 | Adp |int |nothreadhook |
0d96b528 | 2793 | p |void |init_constants |
94bdecf9 | 2794 | |
43869a0c | 2795 | #if defined(PERL_IN_DOOP_C) |
f534d546 KW |
2796 | SR |Size_t |do_trans_simple |NN SV * const sv|NN const OPtrans_map * const tbl |
2797 | SR |Size_t |do_trans_count |NN SV * const sv|NN const OPtrans_map * const tbl | |
2798 | SR |Size_t |do_trans_complex |NN SV * const sv|NN const OPtrans_map * const tbl | |
f34acfec KW |
2799 | SR |Size_t |do_trans_invmap |NN SV * const sv|NN AV * const map |
2800 | SR |Size_t |do_trans_count_invmap |NN SV * const sv|NN AV * const map | |
94bdecf9 JH |
2801 | #endif |
2802 | ||
43869a0c | 2803 | #if defined(PERL_IN_GV_C) |
9f589e47 KW |
2804 | S |void |gv_init_svtype |NN GV *gv|const svtype sv_type |
2805 | S |void |gv_magicalize_isa |NN GV *gv | |
2806 | S |bool|parse_gv_stash_name|NN HV **stash|NN GV **gv \ | |
90aeefb4 BF |
2807 | |NN const char **name|NN STRLEN *len \ |
2808 | |NN const char *nambeg|STRLEN full_len \ | |
2809 | |const U32 is_utf8|const I32 add | |
9f589e47 | 2810 | S |bool|find_default_stash|NN HV **stash|NN const char *name \ |
90aeefb4 | 2811 | |STRLEN len|const U32 is_utf8|const I32 add \ |
b3041197 | 2812 | |const svtype sv_type |
9f589e47 | 2813 | S |bool|gv_magicalize|NN GV *gv|NN HV *stash|NN const char *name \ |
1321bbe3 | 2814 | |STRLEN len \ |
b3041197 | 2815 | |const svtype sv_type |
9f589e47 KW |
2816 | S |void|maybe_multimagic_gv|NN GV *gv|NN const char *name|const svtype sv_type |
2817 | S |bool|gv_is_in_main|NN const char *name|STRLEN len \ | |
536d1a88 | 2818 | |const U32 is_utf8 |
9f589e47 | 2819 | S |void |require_tie_mod|NN GV *gv|NN const char varname \ |
a1683482 | 2820 | |NN const char * name|STRLEN len \ |
dd14162d | 2821 | |const U32 flags |
94bdecf9 JH |
2822 | #endif |
2823 | ||
dd14162d KW |
2824 | #if defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) |
2825 | po |SV* |hfree_next_entry |NN HV *hv|NN STRLEN *indexp | |
f0f5dc9d AL |
2826 | #endif |
2827 | ||
dd14162d KW |
2828 | #if defined(PERL_IN_HV_C) |
2829 | S |void |hsplit |NN HV *hv|STRLEN const oldsize|STRLEN newsize | |
2830 | S |void |hv_free_entries|NN HV *hv | |
2831 | S |SV* |hv_free_ent_ret|NN HV *hv|NN HE *entry | |
2832 | SR |HE* |new_he | |
2833 | SaTR |HEK* |save_hek_flags |NN const char *str|I32 len|U32 hash|int flags | |
2834 | ST |void |hv_magic_check |NN HV *hv|NN bool *needs_copy|NN bool *needs_store | |
2835 | S |void |unshare_hek_or_pvn|NULLOK const HEK* hek|NULLOK const char* str|I32 len|U32 hash | |
2836 | SR |HEK* |share_hek_flags|NN const char *str|STRLEN len|U32 hash|int flags | |
2837 | rS |void |hv_notallowed |int flags|NN const char *key|I32 klen|NN const char *msg | |
2838 | iT |U32|ptr_hash|PTRV u | |
2839 | S |struct xpvhv_aux*|hv_auxinit|NN HV *hv | |
2840 | ST |struct xpvhv_aux*|hv_auxinit_internal|NN struct xpvhv_aux *iter | |
2841 | Sx |SV* |hv_delete_common|NULLOK HV *hv|NULLOK SV *keysv \ | |
2842 | |NULLOK const char *key|STRLEN klen|int k_flags|I32 d_flags \ | |
2843 | |U32 hash | |
2844 | Sx |void |clear_placeholders |NN HV *hv|U32 items | |
94bdecf9 JH |
2845 | #endif |
2846 | ||
dd14162d KW |
2847 | #if defined(PERL_IN_MG_C) |
2848 | S |void |save_magic_flags|I32 mgs_ix|NN SV *sv|U32 flags | |
2849 | S |int |magic_methpack |NN SV *sv|NN const MAGIC *mg|NN SV *meth | |
2850 | S |SV* |magic_methcall1|NN SV *sv|NN const MAGIC *mg \ | |
2851 | |NN SV *meth|U32 flags \ | |
2852 | |int n|NULLOK SV *val | |
2853 | S |void |restore_magic |NULLOK const void *p | |
2854 | S |void |unwind_handler_stack|NULLOK const void *p | |
2855 | S |void |fixup_errno_string|NN SV* sv | |
2856 | ||
2857 | #endif | |
2858 | ||
2859 | #if defined(PERL_IN_OP_C) | |
2860 | SRT |bool |is_handle_constructor|NN const OP *o|I32 numargs | |
2861 | SR |I32 |assignment_type|NULLOK const OP *o | |
2862 | S |void |forget_pmop |NN PMOP *const o | |
2863 | S |void |find_and_forget_pmops |NN OP *o | |
2864 | S |void |cop_free |NN COP *cop | |
2865 | S |OP* |modkids |NULLOK OP *o|I32 type | |
2866 | S |OP* |scalarboolean |NN OP *o | |
2867 | SR |OP* |search_const |NN OP *o | |
2868 | SR |OP* |new_logop |I32 type|I32 flags|NN OP **firstp|NN OP **otherp | |
2869 | S |void |simplify_sort |NN OP *o | |
2870 | SRT |bool |scalar_mod_type|NULLOK const OP *o|I32 type | |
2871 | S |OP * |my_kid |NULLOK OP *o|NULLOK OP *attrs|NN OP **imopsp | |
2872 | S |OP * |dup_attrlist |NN OP *o | |
2873 | S |void |apply_attrs |NN HV *stash|NN SV *target|NULLOK OP *attrs | |
2874 | S |void |apply_attrs_my |NN HV *stash|NN OP *target|NULLOK OP *attrs|NN OP **imopsp | |
2875 | S |void |bad_type_pv |I32 n|NN const char *t|NN const OP *o|NN const OP *kid | |
2876 | S |void |bad_type_gv |I32 n|NN GV *gv|NN const OP *kid|NN const char *t | |
2877 | S |void |no_bareword_allowed|NN OP *o | |
2878 | SR |OP* |no_fh_allowed|NN OP *o | |
2879 | SR |OP* |too_few_arguments_pv|NN OP *o|NN const char* name|U32 flags | |
2880 | S |OP* |too_many_arguments_pv|NN OP *o|NN const char* name|U32 flags | |
2881 | S |bool |looks_like_bool|NN const OP* o | |
2882 | S |OP* |newGIVWHENOP |NULLOK OP* cond|NN OP *block \ | |
2883 | |I32 enter_opcode|I32 leave_opcode \ | |
2884 | |PADOFFSET entertarg | |
2885 | S |OP* |ref_array_or_hash|NULLOK OP* cond | |
2886 | S |bool |process_special_blocks |I32 floor \ | |
2887 | |NN const char *const fullname\ | |
2888 | |NN GV *const gv|NN CV *const cv | |
2889 | S |void |clear_special_blocks |NN const char *const fullname\ | |
2890 | |NN GV *const gv|NN CV *const cv | |
2891 | #endif | |
2892 | XpR |void* |Slab_Alloc |size_t sz | |
2893 | Xp |void |Slab_Free |NN void *op | |
2894 | #if defined(PERL_DEBUG_READONLY_OPS) | |
2895 | # if defined(PERL_CORE) | |
2896 | pe |void |Slab_to_ro |NN OPSLAB *slab | |
2897 | pe |void |Slab_to_rw |NN OPSLAB *const slab | |
2898 | # endif | |
2899 | : Used in OpREFCNT_inc() in sv.c | |
2900 | poex |OP * |op_refcnt_inc |NULLOK OP *o | |
2901 | : FIXME - can be static. | |
2902 | poex |PADOFFSET |op_refcnt_dec |NN OP *o | |
2903 | #endif | |
2904 | ||
2905 | #if defined(PERL_IN_PERL_C) | |
2906 | S |void |find_beginning |NN SV* linestr_sv|NN PerlIO *rsfp | |
2907 | S |void |forbid_setid |const char flag|const bool suidscript | |
2908 | S |void |incpush |NN const char *const dir|STRLEN len \ | |
2909 | |U32 flags | |
2910 | S |SV* |mayberelocate |NN const char *const dir|STRLEN len \ | |
2911 | |U32 flags | |
2912 | S |void |incpush_use_sep|NN const char *p|STRLEN len|U32 flags | |
2913 | S |void |init_interp | |
2914 | S |void |init_ids | |
2915 | S |void |init_main_stash | |
2916 | S |void |init_perllib | |
2917 | S |void |init_postdump_symbols|int argc|NN char **argv|NULLOK char **env | |
2918 | S |void |init_predump_symbols | |
2919 | rS |void |my_exit_jump | |
2920 | S |void |nuke_stacks | |
2921 | S |PerlIO *|open_script |NN const char *scriptname|bool dosearch \ | |
2922 | |NN bool *suidscript | |
2923 | Sr |void |usage | |
2924 | #ifndef SETUID_SCRIPTS_ARE_SECURE_NOW | |
2925 | So |void |validate_suid |NN PerlIO *rsfp | |
2926 | #endif | |
2927 | Sr |void |minus_v | |
2928 | ||
2929 | S |void* |parse_body |NULLOK char **env|XSINIT_t xsinit | |
2930 | rS |void |run_body |I32 oldscope | |
2931 | # ifndef PERL_IS_MINIPERL | |
2932 | S |SV * |incpush_if_exists|NN AV *const av|NN SV *dir|NN SV *const stem | |
3dab1dad | 2933 | # endif |
94bdecf9 JH |
2934 | #endif |
2935 | ||
dd14162d KW |
2936 | #if defined(PERL_IN_PP_C) |
2937 | S |size_t |do_chomp |NN SV *retval|NN SV *sv|bool chomping | |
2938 | S |OP* |do_delete_local | |
2939 | SR |SV* |refto |NN SV* sv | |
2940 | #endif | |
2941 | #if defined(PERL_IN_PP_C) || defined(PERL_IN_PP_HOT_C) | |
2942 | : Used in pp_hot.c | |
2943 | pReo |GV* |softref2xv |NN SV *const sv|NN const char *const what \ | |
2944 | |const svtype type|NN SV ***spp | |
2945 | iTR |bool |lossless_NV_to_IV|const NV nv|NN IV * ivp | |
34aeb2e9 | 2946 | #endif |
e0be7821 KW |
2947 | #if defined(PERL_IN_PP_HOT_C) |
2948 | IR |bool |should_we_output_Debug_r|NN regexp * prog | |
2949 | #endif | |
94749a5e | 2950 | |
dd14162d KW |
2951 | #if defined(PERL_IN_PP_PACK_C) |
2952 | S |SSize_t|unpack_rec |NN struct tempsym* symptr|NN const char *s \ | |
2953 | |NN const char *strbeg|NN const char *strend|NULLOK const char **new_s | |
2954 | S |SV ** |pack_rec |NN SV *cat|NN struct tempsym* symptr|NN SV **beglist|NN SV **endlist | |
2955 | S |SV* |mul128 |NN SV *sv|U8 m | |
2956 | S |SSize_t|measure_struct |NN struct tempsym* symptr | |
2957 | S |bool |next_symbol |NN struct tempsym* symptr | |
2958 | SR |SV* |is_an_int |NN const char *s|STRLEN l | |
2959 | S |int |div128 |NN SV *pnum|NN bool *done | |
2960 | S |const char *|group_end |NN const char *patptr|NN const char *patend \ | |
2961 | |char ender | |
2962 | SR |const char *|get_num |NN const char *patptr|NN SSize_t *lenptr | |
2963 | TS |bool |need_utf8 |NN const char *pat|NN const char *patend | |
2964 | TS |char |first_symbol |NN const char *pat|NN const char *patend | |
2965 | SR |char * |sv_exp_grow |NN SV *sv|STRLEN needed | |
2966 | STR |char * |my_bytes_to_utf8|NN const U8 *start|STRLEN len|NN char *dest \ | |
2967 | |const bool needs_swap | |
94749a5e KW |
2968 | #endif |
2969 | ||
dd14162d KW |
2970 | #if defined(PERL_IN_PP_CTL_C) |
2971 | SdR |OP* |docatch |Perl_ppaddr_t firstpp | |
2972 | SR |OP* |dofindlabel |NN OP *o|NN const char *label|STRLEN len \ | |
2973 | |U32 flags|NN OP **opstack|NN OP **oplimit | |
2974 | S |MAGIC *|doparseform |NN SV *sv | |
2975 | STR |bool |num_overflow |NV value|I32 fldsize|I32 frcsize | |
2976 | SR |I32 |dopoptoeval |I32 startingblock | |
2977 | SR |I32 |dopoptogivenfor|I32 startingblock | |
2978 | SR |I32 |dopoptolabel |NN const char *label|STRLEN len|U32 flags | |
2979 | SR |I32 |dopoptoloop |I32 startingblock | |
2980 | SR |I32 |dopoptosub_at |NN const PERL_CONTEXT* cxstk|I32 startingblock | |
2981 | SR |I32 |dopoptowhen |I32 startingblock | |
2982 | S |void |save_lines |NULLOK AV *array|NN SV *sv | |
2983 | S |bool |doeval_compile |U8 gimme \ | |
2984 | |NULLOK CV* outside|U32 seq|NULLOK HV* hh | |
2985 | SR |PerlIO *|check_type_and_open|NN SV *name | |
2986 | #ifndef PERL_DISABLE_PMC | |
2987 | SR |PerlIO *|doopen_pm |NN SV *name | |
2988 | #endif | |
2989 | iRT |bool |path_is_searchable|NN const char *name | |
2990 | SR |I32 |run_user_filter|int idx|NN SV *buf_sv|int maxlen | |
2991 | SR |PMOP* |make_matcher |NN REGEXP* re | |
2992 | SR |bool |matcher_matches_sv|NN PMOP* matcher|NN SV* sv | |
2993 | S |void |destroy_matcher|NN PMOP* matcher | |
2994 | S |OP* |do_smartmatch |NULLOK HV* seen_this \ | |
2995 | |NULLOK HV* seen_other|const bool copied | |
2996 | #endif | |
cb41e5d6 | 2997 | |
dd14162d KW |
2998 | #if defined(PERL_IN_PP_HOT_C) |
2999 | S |void |do_oddball |NN SV **oddkey|NN SV **firstkey | |
3000 | i |HV* |opmethod_stash |NN SV* meth | |
3001 | #endif | |
3002 | ||
3003 | #if defined(PERL_IN_PP_SORT_C) | |
044d25c7 TK |
3004 | I |I32 |sv_ncmp |NN SV *const a|NN SV *const b |
3005 | I |I32 |sv_ncmp_desc |NN SV *const a|NN SV *const b | |
3006 | I |I32 |sv_i_ncmp |NN SV *const a|NN SV *const b | |
3007 | I |I32 |sv_i_ncmp_desc |NN SV *const a|NN SV *const b | |
3008 | I |I32 |amagic_ncmp |NN SV *const a|NN SV *const b | |
3009 | I |I32 |amagic_ncmp_desc |NN SV *const a|NN SV *const b | |
3010 | I |I32 |amagic_i_ncmp |NN SV *const a|NN SV *const b | |
3011 | I |I32 |amagic_i_ncmp_desc |NN SV *const a|NN SV *const b | |
3012 | I |I32 |amagic_cmp |NN SV *const str1|NN SV *const str2 | |
3013 | I |I32 |amagic_cmp_desc |NN SV *const str1|NN SV *const str2 | |
3014 | I |I32 |cmp_desc |NN SV *const str1|NN SV *const str2 | |
dd14162d | 3015 | # ifdef USE_LOCALE_COLLATE |
044d25c7 TK |
3016 | I |I32 |amagic_cmp_locale |NN SV *const str1|NN SV *const str2 |
3017 | I |I32 |amagic_cmp_locale_desc|NN SV *const str1|NN SV *const str2 | |
3018 | I |I32 |cmp_locale_desc|NN SV *const str1|NN SV *const str2 | |
dd14162d KW |
3019 | # endif |
3020 | S |I32 |sortcv |NN SV *const a|NN SV *const b | |
3021 | S |I32 |sortcv_xsub |NN SV *const a|NN SV *const b | |
3022 | S |I32 |sortcv_stacked |NN SV *const a|NN SV *const b | |
044d25c7 | 3023 | I |void |sortsv_flags_impl |NULLOK SV** array|size_t num_elts|NN SVCOMPARE_t cmp|U32 flags |
dd14162d KW |
3024 | #endif |
3025 | ||
3026 | #if defined(PERL_IN_PP_SYS_C) | |
3027 | S |OP* |doform |NN CV *cv|NN GV *gv|NULLOK OP *retop | |
3028 | # if !defined(HAS_MKDIR) || !defined(HAS_RMDIR) | |
3029 | SR |int |dooneliner |NN const char *cmd|NN const char *filename | |
07be1b83 | 3030 | # endif |
dd14162d | 3031 | S |SV * |space_join_names_mortal|NULLOK char *const *array |
94bdecf9 | 3032 | #endif |
dd14162d KW |
3033 | Fp |OP * |tied_method|NN SV *methname|NN SV **sp \ |
3034 | |NN SV *const sv|NN const MAGIC *const mg \ | |
3035 | |const U32 flags|U32 argc|... | |
94bdecf9 | 3036 | |
43869a0c | 3037 | #if defined(PERL_IN_DUMP_C) |
9f589e47 KW |
3038 | S |CV* |deb_curcv |I32 ix |
3039 | S |void |debprof |NN const OP *o | |
3040 | S |UV |sequence_num |NULLOK const OP *o | |
3041 | S |SV* |pm_description |NN const PMOP *pm | |
94bdecf9 JH |
3042 | #endif |
3043 | ||
43869a0c | 3044 | #if defined(PERL_IN_SCOPE_C) |
9f589e47 | 3045 | S |SV* |save_scalar_at |NN SV **sptr|const U32 flags |
94bdecf9 JH |
3046 | #endif |
3047 | ||
4c74a7df | 3048 | #if defined(PERL_IN_GV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_PAD_C) || defined(PERL_IN_OP_C) |
67022846 | 3049 | : Used in gv.c |
2b021c53 | 3050 | po |void |sv_add_backref |NN SV *const tsv|NN SV *const sv |
e15faf7d NC |
3051 | #endif |
3052 | ||
43869a0c | 3053 | #if defined(PERL_IN_HV_C) || defined(PERL_IN_MG_C) || defined(PERL_IN_SV_C) |
67022846 | 3054 | : Used in hv.c and mg.c |
e4aeb12f | 3055 | pox |void |sv_kill_backrefs |NN SV *const sv|NULLOK AV *const av |
86f55936 NC |
3056 | #endif |
3057 | ||
579333ee FC |
3058 | #if defined(PERL_IN_SV_C) || defined (PERL_IN_OP_C) |
3059 | pR |SV * |varname |NULLOK const GV *const gv|const char gvtype \ | |
3060 | |PADOFFSET targ|NULLOK const SV *const keyname \ | |
1b3df0e6 | 3061 | |SSize_t aindex|int subscript_type |
579333ee FC |
3062 | #endif |
3063 | ||
4c74a7df | 3064 | pX |void |sv_del_backref |NN SV *const tsv|NN SV *const sv |
43869a0c | 3065 | #if defined(PERL_IN_SV_C) |
45b29440 | 3066 | TiR |char * |uiv_2buf |NN char *const buf|const IV iv|UV uv|const int is_uv|NN char **const peob |
0b754184 | 3067 | i |void |sv_unglob |NN SV *const sv|U32 flags |
9f589e47 KW |
3068 | S |const char *|sv_display |NN SV *const sv|NN char *tmpbuf|STRLEN tmpbuf_size |
3069 | S |void |not_a_number |NN SV *const sv | |
3070 | S |void |not_incrementable |NN SV *const sv | |
3071 | S |I32 |visit |NN SVFUNC_t f|const U32 flags|const U32 mask | |
94bdecf9 | 3072 | # ifdef DEBUGGING |
9f589e47 | 3073 | S |void |del_sv |NN SV *p |
94bdecf9 JH |
3074 | # endif |
3075 | # if !defined(NV_PRESERVES_UV) | |
47031da6 | 3076 | # ifdef DEBUGGING |
9f589e47 | 3077 | S |int |sv_2iuv_non_preserve |NN SV *const sv|I32 numtype |
47031da6 | 3078 | # else |
9f589e47 | 3079 | S |int |sv_2iuv_non_preserve |NN SV *const sv |
47031da6 | 3080 | # endif |
94bdecf9 | 3081 | # endif |
9f589e47 KW |
3082 | SR |STRLEN |expect_number |NN const char **const pattern |
3083 | ST |STRLEN |sv_pos_u2b_forwards|NN const U8 *const start \ | |
79d2d448 NC |
3084 | |NN const U8 *const send|NN STRLEN *const uoffset \ |
3085 | |NN bool *const at_end | |
9f589e47 | 3086 | ST |STRLEN |sv_pos_u2b_midway|NN const U8 *const start \ |
503752a1 | 3087 | |NN const U8 *send|STRLEN uoffset|const STRLEN uend |
9f589e47 | 3088 | S |STRLEN |sv_pos_u2b_cached|NN SV *const sv|NN MAGIC **const mgp \ |
25a8a4ef | 3089 | |NN const U8 *const start|NN const U8 *const send \ |
3e2d3818 | 3090 | |STRLEN uoffset|STRLEN uoffset0|STRLEN boffset0 |
9f589e47 | 3091 | S |void |utf8_mg_len_cache_update|NN SV *const sv|NN MAGIC **const mgp \ |
ec49a12c | 3092 | |const STRLEN ulen |
9f589e47 | 3093 | S |void |utf8_mg_pos_cache_update|NN SV *const sv|NN MAGIC **const mgp \ |
ac1e9476 | 3094 | |const STRLEN byte|const STRLEN utf8|const STRLEN blen |
9f589e47 | 3095 | S |STRLEN |sv_pos_b2u_midway|NN const U8 *const s|NN const U8 *const target \ |
25a8a4ef | 3096 | |NN const U8 *end|STRLEN endu |
9f589e47 | 3097 | S |void |assert_uft8_cache_coherent|NN const char *const func \ |
9df83ffd | 3098 | |STRLEN from_cache|STRLEN real|NN SV *const sv |
9f589e47 KW |
3099 | ST |char * |F0convert |NV nv|NN char *const endbuf|NN STRLEN *const len |
3100 | S |SV * |more_sv | |
3101 | S |bool |sv_2iuv_common |NN SV *const sv | |
3102 | S |void |glob_assign_glob|NN SV *const dstr|NN SV *const sstr \ | |
7bc54cea | 3103 | |const int dtype |
9f589e47 KW |
3104 | SRT |PTR_TBL_ENT_t *|ptr_table_find|NN PTR_TBL_t *const tbl|NULLOK const void *const sv |
3105 | S |void |anonymise_cv_maybe |NN GV *gv|NN CV *cv | |
94bdecf9 JH |
3106 | #endif |
3107 | ||
ecf9cdab NC |
3108 | : Used in sv.c and hv.c |
3109 | po |void * |more_bodies |const svtype sv_type|const size_t body_size \ | |
3110 | |const size_t arena_size | |
25c7fb78 KW |
3111 | EXpR |SV* |get_and_check_backslash_N_name|NN const char* s \ |
3112 | |NN const char* const e \ | |
3113 | |const bool is_utf8 \ | |
3114 | |NN const char** error_msg | |
4e8ee35f KW |
3115 | EXpR |HV* |load_charnames |NN SV * char_name \ |
3116 | |NN const char * context \ | |
3117 | |const STRLEN context_len \ | |
3118 | |NN const char ** error_msg | |
ecf9cdab | 3119 | |
9a1ae847 | 3120 | : For use ONLY in B::Hooks::Parser, by special dispensation |
e4aeb12f | 3121 | EXpxR |char* |scan_str |NN char *start|int keep_quoted \ |
aabfeadc KW |
3122 | |int keep_delims|int re_reparse \ |
3123 | |NULLOK char **delimp | |
e4aeb12f | 3124 | EXpx |char* |scan_word |NN char *s|NN char *dest|STRLEN destlen \ |
aabfeadc | 3125 | |int allow_package|NN STRLEN *slp |
e4aeb12f | 3126 | EXpxR |char* |skipspace_flags|NN char *s|U32 flags |
43869a0c | 3127 | #if defined(PERL_IN_TOKE_C) |
9f589e47 KW |
3128 | S |void |check_uni |
3129 | S |void |force_next |I32 type | |
3130 | S |char* |force_version |NN char *s|int guessing | |
3131 | S |char* |force_strict_version |NN char *s | |
3132 | S |char* |force_word |NN char *start|int token|int check_keyword \ | |
345b3785 | 3133 | |int allow_pack |
9f589e47 KW |
3134 | S |SV* |tokeq |NN SV *sv |
3135 | SR |char* |scan_const |NN char *start | |
3136 | SR |SV* |get_and_check_backslash_N_name_wrapper|NN const char* s \ | |
6f613c73 | 3137 | |NN const char* const e |
9f589e47 KW |
3138 | SR |char* |scan_formline |NN char *s |
3139 | SR |char* |scan_heredoc |NN char *s | |
3140 | S |char* |scan_ident |NN char *s|NN char *dest \ | |
94bdecf9 | 3141 | |STRLEN destlen|I32 ck_uni |
9f589e47 KW |
3142 | SR |char* |scan_inputsymbol|NN char *start |
3143 | SR |char* |scan_pat |NN char *start|I32 type | |
3144 | SR |char* |scan_subst |NN char *start | |
3145 | SR |char* |scan_trans |NN char *start | |
3146 | S |void |update_debugger_info|NULLOK SV *orig_sv \ | |
15f169a1 | 3147 | |NULLOK const char *const buf|STRLEN len |
9f589e47 | 3148 | SR |char* |swallow_bom |NN U8 *s |
a28af015 | 3149 | #ifndef PERL_NO_UTF16_FILTER |
9f589e47 KW |
3150 | S |I32 |utf16_textfilter|int idx|NN SV *sv|int maxlen |
3151 | S |U8* |add_utf16_textfilter|NN U8 *const s|bool reversed | |
a28af015 | 3152 | #endif |
9f589e47 | 3153 | S |void |checkcomma |NN const char *s|NN const char *name \ |
c94115d8 | 3154 | |NN const char *what |
9f589e47 KW |
3155 | S |void |force_ident |NN const char *s|int kind |
3156 | S |void |force_ident_maybe_lex|char pit | |
3157 | S |void |incline |NN const char *s|NN const char *end | |
3158 | S |int |intuit_method |NN char *s|NULLOK SV *ioname|NULLOK CV *cv | |
3159 | S |int |intuit_more |NN char *s|NN char *e | |
3160 | S |I32 |lop |I32 f|U8 x|NN char *s | |
3161 | rS |void |missingterm |NULLOK char *s|STRLEN len | |
3162 | S |void |no_op |NN const char *const what|NULLOK char *s | |
3163 | S |int |pending_ident | |
3164 | SR |I32 |sublex_done | |
3165 | SR |I32 |sublex_push | |
3166 | SR |I32 |sublex_start | |
3167 | SR |char * |filter_gets |NN SV *sv|STRLEN append | |
3168 | SR |HV * |find_in_my_stash|NN const char *pkgname|STRLEN len | |
3169 | SR |char * |tokenize_use |int is_use|NN char *s | |
3170 | So |SV* |new_constant |NULLOK const char *s|STRLEN len \ | |
eb0d8d16 | 3171 | |NN const char *key|STRLEN keylen|NN SV *sv \ |
164e423c KW |
3172 | |NULLOK SV *pv|NULLOK const char *type \ |
3173 | |STRLEN typelen \ | |
3174 | |NULLOK const char ** error_msg | |
9f589e47 KW |
3175 | S |int |ao |int toketype |
3176 | S |void|parse_ident|NN char **s|NN char **d \ | |
07f72646 | 3177 | |NN char * const e|int allow_package \ |
2cb35ee0 FC |
3178 | |bool is_utf8|bool check_dollar \ |
3179 | |bool tick_warn | |
94bdecf9 | 3180 | # if defined(PERL_CR_FILTER) |
9f589e47 KW |
3181 | S |I32 |cr_textfilter |int idx|NULLOK SV *sv|int maxlen |
3182 | S |void |strip_return |NN SV *sv | |
94bdecf9 | 3183 | # endif |
c445ea15 | 3184 | # if defined(DEBUGGING) |
9f589e47 KW |
3185 | S |int |tokereport |I32 rv|NN const YYSTYPE* lvalp |
3186 | Sf |void |printbuf |NN const char *const fmt|NN const char *const s | |
c445ea15 | 3187 | # endif |
94bdecf9 | 3188 | #endif |
c1a02cca | 3189 | EdXxp |bool |validate_proto |NN SV *name|NULLOK SV *proto|bool warn \ |
5783dc51 | 3190 | |bool curstash |
94bdecf9 | 3191 | |
43869a0c | 3192 | #if defined(PERL_IN_UNIVERSAL_C) |
c4b6b96d | 3193 | SG |bool |isa_lookup |NULLOK HV *stash|NULLOK SV *namesv|NULLOK const char * name \ |
c7abbf64 | 3194 | |STRLEN len|U32 flags |
0c22dc83 KW |
3195 | SG |bool |sv_derived_from_svpvn |NULLOK SV *sv \ |
3196 | |NULLOK SV *namesv \ | |
3197 | |NULLOK const char * name \ | |
3198 | |const STRLEN len \ | |
3199 | |U32 flags | |
94bdecf9 JH |
3200 | #endif |
3201 | ||
f7416781 | 3202 | #if defined(PERL_IN_LOCALE_C) |
d36adde0 | 3203 | # ifdef USE_LOCALE |
9f589e47 KW |
3204 | ST |const char*|category_name |const int category |
3205 | S |const char*|switch_category_locale_to_template|const int switch_category|const int template_category|NULLOK const char * template_locale | |
3206 | S |void |restore_switched_locale|const int category|NULLOK const char * const original_locale | |
d36adde0 | 3207 | # endif |
f61748ac | 3208 | # ifdef HAS_NL_LANGINFO |
9f589e47 | 3209 | ST |const char*|my_nl_langinfo|const nl_item item|bool toggle |
f61748ac | 3210 | # else |
9f589e47 | 3211 | ST |const char*|my_nl_langinfo|const int item|bool toggle |
f61748ac | 3212 | # endif |
45b29440 | 3213 | iTR |const char *|save_to_buffer|NULLOK const char * string \ |
f7416781 KW |
3214 | |NULLOK char **buf \ |
3215 | |NN Size_t *buf_size \ | |
3216 | |const Size_t offset | |
3217 | # if defined(USE_LOCALE) | |
9f589e47 KW |
3218 | S |char* |stdize_locale |NN char* locs |
3219 | S |void |new_collate |NULLOK const char* newcoll | |
3220 | S |void |new_ctype |NN const char* newctype | |
3221 | S |void |set_numeric_radix|const bool use_locale | |
3222 | S |void |new_numeric |NULLOK const char* newnum | |
e9bc6d6b | 3223 | # ifdef USE_POSIX_2008_LOCALE |
9f589e47 | 3224 | ST |const char*|emulate_setlocale|const int category \ |
e9bc6d6b KW |
3225 | |NULLOK const char* locale \ |
3226 | |unsigned int index \ | |
3227 | |const bool is_index_valid | |
3228 | # endif | |
f7416781 | 3229 | # ifdef WIN32 |
9f589e47 | 3230 | S |char* |win32_setlocale|int category|NULLOK const char* locale |
f7416781 KW |
3231 | # endif |
3232 | # ifdef DEBUGGING | |
9f589e47 | 3233 | S |void |print_collxfrm_input_and_return \ |
c7202dee KW |
3234 | |NN const char * const s \ |
3235 | |NN const char * const e \ | |
3236 | |NULLOK const STRLEN * const xlen \ | |
3237 | |const bool is_utf8 | |
9f589e47 | 3238 | S |void |print_bytes_for_locale |NN const char * const s \ |
9c8a6dc2 KW |
3239 | |NN const char * const e \ |
3240 | |const bool is_utf8 | |
9f589e47 | 3241 | STR |char * |setlocale_debug_string |const int category \ |
a4f00dcc KW |
3242 | |NULLOK const char* const locale \ |
3243 | |NULLOK const char* const retval | |
f7416781 KW |
3244 | # endif |
3245 | # endif | |
9f162648 JH |
3246 | #endif |
3247 | ||
a8f4b0c6 KW |
3248 | #if defined(USE_LOCALE) \ |
3249 | && ( defined(PERL_IN_LOCALE_C) \ | |
3250 | || defined(PERL_IN_MG_C) \ | |
472be41b KW |
3251 | || defined (PERL_EXT_POSIX) \ |
3252 | || defined (PERL_EXT_LANGINFO)) | |
09232555 | 3253 | Cp |bool |_is_cur_LC_category_utf8|int category |
94bdecf9 JH |
3254 | #endif |
3255 | ||
5d1187d1 | 3256 | |
43869a0c | 3257 | #if defined(PERL_IN_UTIL_C) |
9f589e47 KW |
3258 | S |SV* |mess_alloc |
3259 | S |SV * |with_queued_errors|NN SV *ex | |
3260 | S |bool |invoke_exception_hook|NULLOK SV *ex|bool warn | |
73d1d973 | 3261 | #if defined(PERL_MEM_LOG) && !defined(PERL_MEM_LOG_NOIMPL) |
9f589e47 | 3262 | ST |void |mem_log_common |enum mem_log_type mlt|const UV n|const UV typesize \ |
bef8a128 | 3263 | |NN const char *type_name|NULLOK const SV *sv \ |
0b0ab801 MHM |
3264 | |Malloc_t oldalloc|Malloc_t newalloc \ |
3265 | |NN const char *filename|const int linenumber \ | |
3266 | |NN const char *funcname | |
3267 | #endif | |
94bdecf9 JH |
3268 | #endif |
3269 | ||
6fb87544 | 3270 | #if defined(PERL_MEM_LOG) |
45b29440 KW |
3271 | pT |Malloc_t |mem_log_alloc |const UV nconst|UV typesize|NN const char *type_name|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname |
3272 | pT |Malloc_t |mem_log_realloc |const UV n|const UV typesize|NN const char *type_name|Malloc_t oldalloc|Malloc_t newalloc|NN const char *filename|const int linenumber|NN const char *funcname | |
3273 | pT |Malloc_t |mem_log_free |Malloc_t oldalloc|NN const char *filename|const int linenumber|NN const char *funcname | |
6fb87544 MH |
3274 | #endif |
3275 | ||
43869a0c | 3276 | #if defined(PERL_IN_UTF8_C) |
9f589e47 | 3277 | SR |HV * |new_msg_hv |NN const char * const message \ |
bb07812e KW |
3278 | |U32 categories \ |
3279 | |U32 flag | |
09f3c061 | 3280 | SR |UV |check_locale_boundary_crossing \ |
ab0b796c KW |
3281 | |NN const U8* const p \ |
3282 | |const UV result \ | |
3283 | |NN U8* const ustrp \ | |
3284 | |NN STRLEN *lenp | |
34aeb2e9 | 3285 | iR |bool |is_utf8_common |NN const U8 *const p \ |
dd1a3ba7 | 3286 | |NN const U8 *const e \ |
34aeb2e9 | 3287 | |NULLOK SV* const invlist |
646ca15d JH |
3288 | #endif |
3289 | ||
c9182d9c | 3290 | EXiTp |void |append_utf8_from_native_byte|const U8 byte|NN U8** dest |
55d09dc8 | 3291 | |
e03e82a0 | 3292 | Apd |void |sv_set_undef |NN SV *sv |
7bc54cea | 3293 | Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags |
2e000ff2 SS |
3294 | Apd |void |sv_catpvn_flags|NN SV *const dstr|NN const char *sstr|const STRLEN len \ |
3295 | |const I32 flags | |
9dcc53ea Z |
3296 | Apd |void |sv_catpv_flags |NN SV *dstr|NN const char *sstr \ |
3297 | |const I32 flags | |
2e000ff2 | 3298 | Apd |void |sv_catsv_flags |NN SV *const dsv|NULLOK SV *const ssv|const I32 flags |
ef9e3b4d | 3299 | Amd |STRLEN |sv_utf8_upgrade_flags|NN SV *const sv|const I32 flags |
defad34a | 3300 | Adp |STRLEN |sv_utf8_upgrade_flags_grow|NN SV *const sv|const I32 flags|STRLEN extra |
aa80caa7 | 3301 | Apd |char* |sv_pvn_force_flags|NN SV *const sv|NULLOK STRLEN *const lp|const U32 flags |
b719801d | 3302 | AdpMb |void |sv_copypv |NN SV *const dsv|NN SV *const ssv |
5178f485 | 3303 | Amd |void |sv_copypv_nomg |NN SV *const dsv|NN SV *const ssv |
4bac9ae4 | 3304 | Apd |void |sv_copypv_flags |NN SV *const dsv|NN SV *const ssv|const I32 flags |
2378c9f3 KW |
3305 | Cpo |char* |my_atof2 |NN const char *orig|NN NV* value |
3306 | Cp |char* |my_atof3 |NN const char *orig|NN NV* value|const STRLEN len | |
45b29440 KW |
3307 | ApT |int |my_socketpair |int family|int type|int protocol|int fd[2] |
3308 | ApT |int |my_dirfd |NULLOK DIR* dir | |
db2c6cb3 | 3309 | #ifdef PERL_ANY_COW |
2a5e5773 | 3310 | : Used in regexec.c |
e4aeb12f | 3311 | pxXE |SV* |sv_setsv_cow |NULLOK SV* dstr|NN SV* sstr |
ed252734 | 3312 | #endif |
94bdecf9 | 3313 | |
d070ff45 | 3314 | Aop |const char *|PerlIO_context_layers|NULLOK const char *mode |
11bcd5da | 3315 | |
97cb92d6 | 3316 | #if defined(USE_PERLIO) |
678f21a2 | 3317 | Apdh |int |PerlIO_close |NULLOK PerlIO *f |
46c461b5 | 3318 | Ap |int |PerlIO_fill |NULLOK PerlIO *f |
678f21a2 KW |
3319 | Apdh |int |PerlIO_fileno |NULLOK PerlIO *f |
3320 | Apdh |int |PerlIO_eof |NULLOK PerlIO *f | |
3321 | Apdh |int |PerlIO_error |NULLOK PerlIO *f | |
3322 | Apdh |int |PerlIO_flush |NULLOK PerlIO *f | |
3323 | Apdh |void |PerlIO_clearerr |NULLOK PerlIO *f | |
3324 | Apdh |void |PerlIO_set_cnt |NULLOK PerlIO *f|SSize_t cnt | |
3325 | Apdh |void |PerlIO_set_ptrcnt |NULLOK PerlIO *f|NULLOK STDCHAR *ptr \ | |
b66f3475 | 3326 | |SSize_t cnt |
678f21a2 KW |
3327 | Apdh |void |PerlIO_setlinebuf |NULLOK PerlIO *f |
3328 | Apdh |SSize_t|PerlIO_read |NULLOK PerlIO *f|NN void *vbuf \ | |
4048f010 | 3329 | |Size_t count |
678f21a2 | 3330 | Apdh |SSize_t|PerlIO_write |NULLOK PerlIO *f|NN const void *vbuf \ |
4048f010 NC |
3331 | |Size_t count |
3332 | Ap |SSize_t|PerlIO_unread |NULLOK PerlIO *f|NN const void *vbuf \ | |
3333 | |Size_t count | |
678f21a2 KW |
3334 | Apdh |Off_t |PerlIO_tell |NULLOK PerlIO *f |
3335 | Apdh |int |PerlIO_seek |NULLOK PerlIO *f|Off_t offset|int whence | |
0ea86a10 FC |
3336 | Xp |void |PerlIO_save_errno |NULLOK PerlIO *f |
3337 | Xp |void |PerlIO_restore_errno |NULLOK PerlIO *f | |
94bdecf9 | 3338 | |
678f21a2 KW |
3339 | Apdh |STDCHAR *|PerlIO_get_base |NULLOK PerlIO *f |
3340 | Apdh |STDCHAR *|PerlIO_get_ptr |NULLOK PerlIO *f | |
3341 | ApRdh |SSize_t |PerlIO_get_bufsiz |NULLOK PerlIO *f | |
3342 | ApRdh |SSize_t |PerlIO_get_cnt |NULLOK PerlIO *f | |
94bdecf9 | 3343 | |
678f21a2 KW |
3344 | ApRdh |PerlIO *|PerlIO_stdin |
3345 | ApRdh |PerlIO *|PerlIO_stdout | |
3346 | ApRdh |PerlIO *|PerlIO_stderr | |
57630fb6 | 3347 | #endif /* USE_PERLIO */ |
94bdecf9 | 3348 | |
67022846 | 3349 | : Only used in dump.c |
d6721266 | 3350 | p |void |deb_stack_all |
43869a0c | 3351 | #if defined(PERL_IN_DEB_C) |
9f589e47 | 3352 | S |void |deb_stack_n |NN SV** stack_base|I32 stack_min \ |
3f46c5a6 | 3353 | |I32 stack_max|I32 mark_min|I32 mark_max |
d6721266 DM |
3354 | #endif |
3355 | ||
cc76b5cc | 3356 | : pad API |
346c6a29 | 3357 | ApdR |PADLIST*|pad_new |int flags |
eacbb379 | 3358 | #ifdef DEBUGGING |
45b29440 | 3359 | pTX |void|set_padlist| NN CV * cv | NULLOK PADLIST * padlist |
eacbb379 | 3360 | #endif |
cc76b5cc | 3361 | #if defined(PERL_IN_PAD_C) |
c1a02cca | 3362 | Sd |PADOFFSET|pad_alloc_name|NN PADNAME *name|U32 flags \ |
cc76b5cc Z |
3363 | |NULLOK HV *typestash|NULLOK HV *ourstash |
3364 | #endif | |
3365 | Apd |PADOFFSET|pad_add_name_pvn|NN const char *namepv|STRLEN namelen\ | |
0e1b3a4b | 3366 | |U32 flags|NULLOK HV *typestash\ |
cca43f78 | 3367 | |NULLOK HV *ourstash |
cc76b5cc Z |
3368 | Apd |PADOFFSET|pad_add_name_pv|NN const char *name\ |
3369 | |const U32 flags|NULLOK HV *typestash\ | |
3370 | |NULLOK HV *ourstash | |
3371 | Apd |PADOFFSET|pad_add_name_sv|NN SV *name\ | |
0e1b3a4b | 3372 | |U32 flags|NULLOK HV *typestash\ |
cc76b5cc | 3373 | |NULLOK HV *ourstash |
e4aeb12f | 3374 | Axpd |PADOFFSET|pad_alloc |I32 optype|U32 tmptype |
cc76b5cc | 3375 | Apd |PADOFFSET|pad_add_anon |NN CV* func|I32 optype |
a70f21d0 | 3376 | p |void |pad_add_weakref|NN CV* func |
43869a0c | 3377 | #if defined(PERL_IN_PAD_C) |
9f589e47 | 3378 | Sd |void |pad_check_dup |NN PADNAME *name|U32 flags \ |
e1c02f84 | 3379 | |NULLOK const HV *ourstash |
cc76b5cc | 3380 | #endif |
402642c6 | 3381 | Apd |PADOFFSET|pad_findmy_pvn|NN const char* namepv|STRLEN namelen|U32 flags |
2d7dd515 Z |
3382 | Apd |PADOFFSET|pad_findmy_pv|NN const char* name|U32 flags |
3383 | Apd |PADOFFSET|pad_findmy_sv|NN SV* name|U32 flags | |
cc76b5cc Z |
3384 | ApdD |PADOFFSET|find_rundefsvoffset | |
3385 | Apd |SV* |find_rundefsv | | |
3386 | #if defined(PERL_IN_PAD_C) | |
9f589e47 | 3387 | Sd |PADOFFSET|pad_findlex |NN const char *namepv|STRLEN namelen|U32 flags \ |
cc76b5cc | 3388 | |NN const CV* cv|U32 seq|int warn \ |
e1c02f84 FC |
3389 | |NULLOK SV** out_capture \ |
3390 | |NN PADNAME** out_name|NN int *out_flags | |
73b81b14 | 3391 | #endif |
dd2155a4 | 3392 | #ifdef DEBUGGING |
16376614 | 3393 | Cpd |SV* |pad_sv |PADOFFSET po |
042f0c67 | 3394 | Cpd |void |pad_setsv |PADOFFSET po|NN SV* sv |
dd2155a4 DM |
3395 | #endif |
3396 | pd |void |pad_block_start|int full | |
25f5d540 | 3397 | Apd |U32 |intro_my |
6d5c2147 | 3398 | pd |OP * |pad_leavemy |
cc76b5cc Z |
3399 | pd |void |pad_swipe |PADOFFSET po|bool refadjust |
3400 | #if defined(PERL_IN_PAD_C) | |
9f589e47 | 3401 | Sd |void |pad_reset |
d5b1589c | 3402 | #endif |
e4aeb12f | 3403 | Axpd |void |pad_tidy |padtidy_type type |
cc76b5cc | 3404 | pd |void |pad_free |PADOFFSET po |
e950ecba | 3405 | pd |void |do_dump_pad |I32 level|NN PerlIO *file|NULLOK PADLIST *padlist|int full |
43869a0c | 3406 | #if defined(PERL_IN_PAD_C) |
dd2155a4 | 3407 | # if defined(DEBUGGING) |
9f589e47 | 3408 | Sd |void |cv_dump |NN const CV *cv|NN const char *title |
dd2155a4 | 3409 | # endif |
dd2155a4 | 3410 | #endif |
b9d5702c KW |
3411 | #if defined(PERL_IN_PAD_C) || defined(PERL_IN_OP_C) |
3412 | iT |bool |PadnameIN_SCOPE|NN const PADNAME * const pn|const U32 seq | |
3413 | #endif | |
cc76b5cc | 3414 | Apd |CV* |cv_clone |NN CV* proto |
a35cc1c1 | 3415 | p |CV* |cv_clone_into |NN CV* proto|NN CV *target |
cc76b5cc Z |
3416 | pd |void |pad_fixup_inner_anons|NN PADLIST *padlist|NN CV *old_cv|NN CV *new_cv |
3417 | pdX |void |pad_push |NN PADLIST *padlist|int depth | |
4352fcf7 | 3418 | ApbdRM |HV* |pad_compname_type|const PADOFFSET po |
e4aeb12f | 3419 | AxpdRT |PADNAME *|padnamelist_fetch|NN PADNAMELIST *pnl|SSize_t key |
9b7476d7 | 3420 | Xop |void |padnamelist_free|NN PADNAMELIST *pnl |
e4aeb12f | 3421 | Axpd |PADNAME **|padnamelist_store|NN PADNAMELIST *pnl|SSize_t key \ |
9b7476d7 | 3422 | |NULLOK PADNAME *val |
0f94cb1f | 3423 | Xop |void |padname_free |NN PADNAME *pn |
cc76b5cc | 3424 | #if defined(USE_ITHREADS) |
0f94cb1f | 3425 | pdR |PADNAME *|padname_dup |NN PADNAME *src|NN CLONE_PARAMS *param |
c1a02cca | 3426 | pdR |PADNAMELIST *|padnamelist_dup|NN PADNAMELIST *srcpad \ |
9b7476d7 | 3427 | |NN CLONE_PARAMS *param |
eacbb379 | 3428 | pdR |PADLIST *|padlist_dup |NN PADLIST *srcpad \ |
b70d5558 | 3429 | |NN CLONE_PARAMS *param |
cc76b5cc | 3430 | #endif |
7261499d FC |
3431 | p |PAD ** |padlist_store |NN PADLIST *padlist|I32 key \ |
3432 | |NULLOK PAD *val | |
cc76b5cc | 3433 | |
daad78fc | 3434 | ApdR |CV* |find_runcv |NULLOK U32 *db_seqp |
db4cf31d | 3435 | pR |CV* |find_runcv_where|U8 cond|IV arg \ |
70794f7b | 3436 | |NULLOK U32 *db_seqp |
67022846 | 3437 | : Only used in perl.c |
dd28f7bb | 3438 | p |void |free_tied_hv_pool |
b4ab917c | 3439 | #if defined(DEBUGGING) |
67022846 | 3440 | : Used in mg.c |
46c461b5 | 3441 | pR |int |get_debug_opts |NN const char **s|bool givehelp |
b4ab917c | 3442 | #endif |
4048f010 | 3443 | Ap |void |save_set_svflags|NN SV *sv|U32 mask|U32 val |
ed760897 | 3444 | #ifdef DEBUGGING |
4048f010 | 3445 | Apod |void |hv_assert |NN HV *hv |
ed760897 | 3446 | #endif |
d6721266 | 3447 | |
4048f010 | 3448 | ApdR |SV* |hv_scalar |NN HV *hv |
8dc9003f | 3449 | p |void |hv_pushkv |NN HV *hv|U32 flags |
e4aeb12f | 3450 | ApdRx |SV* |hv_bucket_ratio|NN HV *hv |
4048f010 NC |
3451 | ApoR |I32* |hv_riter_p |NN HV *hv |
3452 | ApoR |HE** |hv_eiter_p |NN HV *hv | |
3453 | Apo |void |hv_riter_set |NN HV *hv|I32 riter | |
3454 | Apo |void |hv_eiter_set |NN HV *hv|NULLOK HE *eiter | |
e950ecba | 3455 | Ap |void |hv_rand_set |NN HV *hv|U32 new_xhv_rand |
4048f010 | 3456 | Ap |void |hv_name_set |NN HV *hv|NULLOK const char *name|U32 len|U32 flags |
c1a02cca | 3457 | pd |void |hv_ename_add |NN HV *hv|NN const char *name|U32 len \ |
27a1175b | 3458 | |U32 flags |
c1a02cca | 3459 | pd |void |hv_ename_delete|NN HV *hv|NN const char *name|U32 len \ |
27a1175b | 3460 | |U32 flags |
67022846 | 3461 | : Used in dump.c and hv.c |
e4aeb12f | 3462 | pox |AV** |hv_backreferences_p |NN HV *hv |
764ff8a9 | 3463 | #if defined(PERL_IN_DUMP_C) || defined(PERL_IN_HV_C) || defined(PERL_IN_SV_C) || defined(PERL_IN_SCOPE_C) |
e4aeb12f | 3464 | pox |void |hv_kill_backrefs |NN HV *hv |
09aad8f0 | 3465 | #endif |
4048f010 | 3466 | Apd |void |hv_clear_placeholders |NN HV *hv |
6174b39a | 3467 | XpoR |SSize_t*|hv_placeholders_p |NN HV *hv |
0c289d13 | 3468 | ApoR |I32 |hv_placeholders_get |NN const HV *hv |
4048f010 | 3469 | Apo |void |hv_placeholders_set |NN HV *hv|I32 ph |
ca732855 | 3470 | |
67022846 | 3471 | : This is indirectly referenced by globals.c. This is somewhat annoying. |
4048f010 | 3472 | p |SV* |magic_scalarpack|NN HV *hv|NN MAGIC *mg |
10edeb5d | 3473 | |
43869a0c | 3474 | #if defined(PERL_IN_SV_C) |
9f589e47 | 3475 | S |SV * |find_hash_subscript|NULLOK const HV *const hv \ |
6c1b357c | 3476 | |NN const SV *const val |
9f589e47 | 3477 | S |SSize_t|find_array_subscript|NULLOK const AV *const av \ |
6c1b357c | 3478 | |NN const SV *const val |
e4aeb12f | 3479 | Sxd |SV* |find_uninit_var|NULLOK const OP *const obase \ |
fedf30e1 DM |
3480 | |NULLOK const SV *const uninit_sv|bool match \ |
3481 | |NN const char **desc_p | |
29489e7c | 3482 | #endif |
96adfaa1 | 3483 | |
84ca0d82 KW |
3484 | Adp |GV* |gv_fetchpvn_flags|NN const char* name|STRLEN len|I32 flags|const svtype sv_type |
3485 | Adp |GV* |gv_fetchsv|NN SV *name|I32 flags|const svtype sv_type | |
7a5fd60d | 3486 | |
41e4abd8 | 3487 | #ifdef DEBUG_LEAKING_SCALARS_FORK_DUMP |
67022846 | 3488 | : Used in sv.c |
46c461b5 | 3489 | p |void |dump_sv_child |NN SV *sv |
41e4abd8 NC |
3490 | #endif |
3491 | ||
c69033f2 | 3492 | #ifdef PERL_DONT_CREATE_GVSV |
b719801d | 3493 | ApbM |GV* |gv_SVadd |NULLOK GV *gv |
c69033f2 | 3494 | #endif |
43869a0c | 3495 | #if defined(PERL_IN_UTIL_C) |
9f589e47 | 3496 | S |bool |ckwarn_common |U32 w |
26c7b074 | 3497 | #endif |
c8d3da6c KW |
3498 | CpoP |bool |ckwarn |U32 w |
3499 | CpoP |bool |ckwarn_d |U32 w | |
d67fec57 | 3500 | : FIXME - exported for ByteLoader - public or private? |
e4aeb12f | 3501 | XEopxR |STRLEN *|new_warnings_bitfield|NULLOK STRLEN *buffer \ |
72dc9ed5 | 3502 | |NN const char *const bits|STRLEN size |
c69033f2 | 3503 | |
917b9b54 KW |
3504 | AMpTdf |int |my_snprintf |NN char *buffer|const Size_t len|NN const char *format|... |
3505 | AMpTd |int |my_vsnprintf |NN char *buffer|const Size_t len|NN const char *format|va_list ap | |
a4eca1d4 | 3506 | #ifdef USE_QUADMATH |
065d0f13 TC |
3507 | pTd |bool |quadmath_format_valid|NN const char* format |
3508 | pTd |bool|quadmath_format_needed|NN const char* format | |
a4eca1d4 | 3509 | #endif |
d9fad198 | 3510 | |
67022846 | 3511 | : Used in mg.c, sv.c |
5af72e99 | 3512 | pe |void |my_clearenv |
b0269e46 | 3513 | |
f16dd614 | 3514 | #ifdef PERL_IMPLICIT_CONTEXT |
8e7615cb | 3515 | Apo |void* |my_cxt_init |NN int *indexp|size_t size |
f16dd614 | 3516 | #endif |
071d040c | 3517 | #if defined(PERL_IN_UTIL_C) |
9f589e47 | 3518 | So |void |xs_version_bootcheck|U32 items|U32 ax|NN const char *xs_p \ |
e9b067d9 | 3519 | |STRLEN xs_len |
071d040c | 3520 | #endif |
29f5f37e | 3521 | FXpoT |I32 |xs_handshake |const U32 key|NN void * v_my_perl\ |
9a189793 | 3522 | |NN const char * file| ... |
b01a1eea | 3523 | Xp |void |xs_boot_epilog |const I32 ax |
a6cc4119 | 3524 | #ifndef HAS_STRLCAT |
fb49ac44 | 3525 | ApTd |Size_t |my_strlcat |NULLOK char *dst|NULLOK const char *src|Size_t size |
a6cc4119 SP |
3526 | #endif |
3527 | ||
3528 | #ifndef HAS_STRLCPY | |
fb49ac44 | 3529 | ApTd |Size_t |my_strlcpy |NULLOK char *dst|NULLOK const char *src|Size_t size |
a6cc4119 SP |
3530 | #endif |
3531 | ||
aefb3fa0 | 3532 | #ifndef HAS_STRNLEN |
1ab100a8 | 3533 | AipTd |Size_t |my_strnlen |NN const char *str|Size_t maxlen |
aefb3fa0 DIM |
3534 | #endif |
3535 | ||
2517ba99 | 3536 | #ifndef HAS_MKOSTEMP |
45b29440 | 3537 | pTo |int |my_mkostemp |NN char *templte|int flags |
2517ba99 | 3538 | #endif |
e48855bd | 3539 | #ifndef HAS_MKSTEMP |
45b29440 | 3540 | pTo |int |my_mkstemp |NN char *templte |
e48855bd TC |
3541 | #endif |
3542 | ||
45b29440 | 3543 | APpdT |bool |isinfnan |NV nv |
af147c81 | 3544 | pd |bool |isinfnansv |NN SV *sv |
1cd88304 | 3545 | |
ed140128 | 3546 | #if !defined(HAS_SIGNBIT) |
e4aeb12f | 3547 | AxdToP |int |Perl_signbit |NV f |
ed140128 | 3548 | #endif |
f16dd614 | 3549 | |
d67fec57 | 3550 | : Used by B |
e4aeb12f | 3551 | XExop |void |emulate_cop_io |NN const COP *const c|NN SV *const sv |
d67fec57 | 3552 | : Used by SvRX and SvRXOK |
e4aeb12f | 3553 | XExop |REGEXP *|get_re_arg|NULLOK SV *sv |
8b850bd5 | 3554 | |
6a6f8717 | 3555 | Aopdh |SV* |mro_get_private_data|NN struct mro_meta *const smeta \ |
fa60396f | 3556 | |NN const struct mro_alg *const which |
6a6f8717 | 3557 | Aopdh |SV* |mro_set_private_data|NN struct mro_meta *const smeta \ |
fa60396f NC |
3558 | |NN const struct mro_alg *const which \ |
3559 | |NN SV *const data | |
a3e6e81e | 3560 | Aop |const struct mro_alg *|mro_get_from_name|NN SV *name |
c1a02cca | 3561 | Aopd |void |mro_register |NN const struct mro_alg *mro |
31b9005d NC |
3562 | Aop |void |mro_set_mro |NN struct mro_meta *const meta \ |
3563 | |NN SV *const name | |
c60bad7b NC |
3564 | : Used in HvMROMETA(), which is public. |
3565 | Xpo |struct mro_meta* |mro_meta_init |NN HV* stash | |
47c9dd14 | 3566 | #if defined(USE_ITHREADS) |
67022846 | 3567 | : Only used in sv.c |
47c9dd14 BB |
3568 | p |struct mro_meta* |mro_meta_dup |NN struct mro_meta* smeta|NN CLONE_PARAMS* param |
3569 | #endif | |
3570 | Apd |AV* |mro_get_linear_isa|NN HV* stash | |
43869a0c | 3571 | #if defined(PERL_IN_MRO_C) |
9f589e47 KW |
3572 | Sd |AV* |mro_get_linear_isa_dfs|NN HV* stash|U32 level |
3573 | S |void |mro_clean_isarev|NN HV * const isa \ | |
80ebaca2 FC |
3574 | |NN const char * const name \ |
3575 | |const STRLEN len \ | |
3386c920 FC |
3576 | |NULLOK HV * const exceptions \ |
3577 | |U32 hash|U32 flags | |
9f589e47 | 3578 | S |void |mro_gather_and_rename|NN HV * const stashes \ |
b89cdb22 | 3579 | |NN HV * const seen_stashes \ |
80ebaca2 FC |
3580 | |NULLOK HV *stash \ |
3581 | |NULLOK HV *oldstash \ | |
d7879cf0 | 3582 | |NN SV *namesv |
4befac30 | 3583 | #endif |
67022846 | 3584 | : Used in hv.c, mg.c, pp.c, sv.c |
4df35a07 | 3585 | pd |void |mro_isa_changed_in|NN HV* stash |
47c9dd14 | 3586 | Apd |void |mro_method_changed_in |NN HV* stash |
5af72e99 | 3587 | pde |void |mro_package_moved |NULLOK HV * const stash|NULLOK HV * const oldstash|NN const GV * const gv|U32 flags |
67022846 | 3588 | : Only used in perl.c |
47c9dd14 | 3589 | p |void |boot_core_mro |
d7150126 KW |
3590 | CpoT |void |sys_init |NN int* argc|NN char*** argv |
3591 | CpoT |void |sys_init3 |NN int* argc|NN char*** argv|NN char*** env | |
3592 | CpoT |void |sys_term | |
632239c3 | 3593 | Apxd |const char *|cop_fetch_label|NN COP *const cop \ |
dca6062a | 3594 | |NULLOK STRLEN *len|NULLOK U32 *flags |
8375c93e | 3595 | : Only used in op.c and the perl compiler |
632239c3 | 3596 | Apxd |void|cop_store_label \ |
ce42d03d | 3597 | |NN COP *const cop|NN const char *label|STRLEN len|U32 flags |
47c9dd14 | 3598 | |
5af72e99 | 3599 | epo |int |keyword_plugin_standard|NN char* keyword_ptr|STRLEN keyword_len|NN OP** op_ptr |
88e1f1a2 | 3600 | |
f7abe70b | 3601 | #if defined(USE_ITHREADS) |
43869a0c | 3602 | # if defined(PERL_IN_SV_C) |
9f589e47 | 3603 | S |void |unreferenced_to_tmp_stack|NN AV *const unreferenced |
e4295668 | 3604 | # endif |
45b29440 | 3605 | ARTop |CLONE_PARAMS *|clone_params_new|NN PerlInterpreter *const from \ |
f7abe70b | 3606 | |NN PerlInterpreter *const to |
45b29440 | 3607 | ATop |void |clone_params_del|NN CLONE_PARAMS *param |
f7abe70b | 3608 | #endif |
74e8ce34 NC |
3609 | |
3610 | : Used in perl.c and toke.c | |
29f5f37e | 3611 | Fop |void |populate_isa |NN const char *name|STRLEN len|... |
74e8ce34 | 3612 | |
25fdce4a FC |
3613 | : Some static inline functions need predeclaration because they are used |
3614 | : inside other static inline functions. | |
c47d1a66 | 3615 | #if defined(PERL_CORE) || defined (PERL_EXT) |
25fdce4a FC |
3616 | Ei |STRLEN |sv_or_pv_pos_u2b|NN SV *sv|NN const char *pv|STRLEN pos \ |
3617 | |NULLOK STRLEN *lenp | |
c47d1a66 | 3618 | #endif |
25fdce4a | 3619 | |
a73d8813 | 3620 | Ap |void |clear_defarray |NN AV* av|bool abandon |
ad2de1b2 | 3621 | |
e4aeb12f | 3622 | Apx |void |leave_adjust_stacks|NN SV **from_sp|NN SV **to_sp \ |
1c23e2bd | 3623 | |U8 gimme|int filter |
799da9d7 | 3624 | |
ed8ff0f3 | 3625 | #ifndef PERL_NO_INLINE_FUNCTIONS |
d57359ab | 3626 | Cixp |U8 |gimme_V | |
f542621f KW |
3627 | Cixp |PERL_CONTEXT * |cx_pushblock|U8 type|U8 gimme|NN SV** sp|I32 saveix |
3628 | Cixp |void |cx_popblock|NN PERL_CONTEXT *cx | |
3629 | Cixp |void |cx_topblock|NN PERL_CONTEXT *cx | |
3630 | Cixp |void |cx_pushsub |NN PERL_CONTEXT *cx|NN CV *cv \ | |
6a7d52cc | 3631 | |NULLOK OP *retop|bool hasargs |
f542621f KW |
3632 | Cixp |void |cx_popsub_common|NN PERL_CONTEXT *cx |
3633 | Cixp |void |cx_popsub_args |NN PERL_CONTEXT *cx | |
3634 | Cixp |void |cx_popsub |NN PERL_CONTEXT *cx | |
3635 | Cixp |void |cx_pushformat |NN PERL_CONTEXT *cx|NN CV *cv \ | |
6a7d52cc | 3636 | |NULLOK OP *retop|NULLOK GV *gv |
f542621f KW |
3637 | Cixp |void |cx_popformat |NN PERL_CONTEXT *cx |
3638 | Cixp |void |cx_pusheval |NN PERL_CONTEXT *cx \ | |
13febba5 | 3639 | |NULLOK OP *retop|NULLOK SV *namesv |
f542621f KW |
3640 | Cixp |void |cx_popeval |NN PERL_CONTEXT *cx |
3641 | Cixp |void |cx_pushloop_plain|NN PERL_CONTEXT *cx | |
3642 | Cixp |void |cx_pushloop_for |NN PERL_CONTEXT *cx \ | |
d1b6bf72 | 3643 | |NN void *itervarp|NULLOK SV *itersave |
f542621f KW |
3644 | Cixp |void |cx_poploop |NN PERL_CONTEXT *cx |
3645 | Cixp |void |cx_pushwhen |NN PERL_CONTEXT *cx | |
3646 | Cixp |void |cx_popwhen |NN PERL_CONTEXT *cx | |
3647 | Cixp |void |cx_pushgiven |NN PERL_CONTEXT *cx|NULLOK SV *orig_defsv | |
3648 | Cixp |void |cx_popgiven |NN PERL_CONTEXT *cx | |
ed8ff0f3 DM |
3649 | #endif |
3650 | ||
3f6bd23a | 3651 | #ifdef USE_DTRACE |
e950ecba KW |
3652 | XEop |void |dtrace_probe_call |NN CV *cv|bool is_call |
3653 | XEop |void |dtrace_probe_load |NN const char *name|bool is_loading | |
3654 | XEop |void |dtrace_probe_op |NN const OP *op | |
3655 | XEop |void |dtrace_probe_phase|enum perl_phase phase | |
3f6bd23a DM |
3656 | #endif |
3657 | ||
de59f38e | 3658 | XEop |STRLEN*|dup_warnings |NULLOK STRLEN* warnings |
c1e47bad | 3659 | |
b2ba7ad6 | 3660 | : ex: set ts=8 sts=4 sw=4 noet: |