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