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