: "#define foo Perl_foo", rather than
: "#define foo(a,b,c) Perl_foo(aTHX_ a,b,c)
:
+: O Has a perl_ compatibility macro.
+:
+: The really OLD name for API funcs
+:
: o Has no Perl_foo compatibility macro:
:
: embed.h: suppress "#define foo Perl_foo"
:
: Individual flags may be separated by whitespace.
-START_EXTERN_C
-
#if defined(PERL_IMPLICIT_SYS)
Ano |PerlInterpreter*|perl_alloc_using \
|NN struct IPerlMem *ipM \
AnpR |void* |get_context
Anp |void |set_context |NN void *t
-EXpRnPM |I32 |regcurly |NN const char *s
-END_EXTERN_C
-
-/* functions with flag 'n' should come before here */
-START_EXTERN_C
-# include "pp_proto.h"
XEop |bool |try_amagic_bin |int method|int flags
XEop |bool |try_amagic_un |int method|int flags
Ap |SV* |amagic_call |NN SV* left|NN SV* right|int method|int dir
Apd |SV* |cop_hints_fetchpvn|NN const COP *cop|NN const char *key \
|STRLEN klen|int flags|U32 hash
Amd |SV* |cop_hints_fetchpvs|NN const COP *cop|NN const char *const key
+Amd |SV* |cop_hints_fetchpv|NN const COP *cop|NN const char *const key \
+ |int flags|U32 hash
Amd |SV* |cop_hints_fetchsv|NN const COP *cop|NN SV *keysv|U32 hash
: Used in op.c and perl.c
pM |PERL_CONTEXT* |create_eval_scope|U32 flags
AMpd |bool |lex_bufutf8
AMpd |char* |lex_grow_linestr|STRLEN len
AMpd |void |lex_stuff_pvn |NN const char* pv|STRLEN len|U32 flags
+AMpd |void |lex_stuff_pv |NN const char* pv|U32 flags
AMpd |void |lex_stuff_sv |NN SV* sv|U32 flags
AMpd |void |lex_unstuff |NN char* ptr
AMpd |void |lex_read_to |NN char* ptr
AMpd |void |lex_read_space |U32 flags
: Public parser API
AMpd |OP* |parse_fullstmt |U32 flags
+AMpd |OP* |parse_stmtseq |U32 flags
: Used in various files
Ap |void |op_null |NN OP* o
: FIXME. Used by Data::Alias
Apda |SV* |newSVpvn_flags |NULLOK const char *const s|const STRLEN len|const U32 flags
Apda |SV* |newSVhek |NULLOK const HEK *const hek
Apda |SV* |newSVpvn_share |NULLOK const char* s|I32 len|U32 hash
+Apda |SV* |newSVpv_share |NULLOK const char* s|U32 hash
Afpda |SV* |newSVpvf |NN const char *const pat|...
Apa |SV* |vnewSVpvf |NN const char *const pat|NULLOK va_list *const args
Apd |SV* |newSVrv |NN SV *const rv|NULLOK const char *const classname
|NULLOK int *ssaw_decimal|NULLOK int *swidth|NULLOK bool *salpha
Apd |SV* |new_version |NN SV *ver
Apd |SV* |upg_version |NN SV *ver|bool qv
-Apd |bool |vverify |NN SV *vs
+Apd |SV* |vverify |NN SV *vs
Apd |SV* |vnumify |NN SV *vs
Apd |SV* |vnormal |NN SV *vs
Apd |SV* |vstringify |NN SV *vs
Ap |void |reentrant_free
Anp |void* |reentrant_retry|NN const char *f|...
#endif
+: "Very" special - can't use the O flag for this one:
+: (The rename from perl_atexit to Perl_call_atexit was in 864dbfa3ca8032ef)
Ap |void |call_atexit |ATEXIT_t fn|NULLOK void *ptr
-Apd |I32 |call_argv |NN const char* sub_name|I32 flags|NN char** argv
-Apd |I32 |call_method |NN const char* methname|I32 flags
-Apd |I32 |call_pv |NN const char* sub_name|I32 flags
-Apd |I32 |call_sv |NN SV* sv|VOL I32 flags
+ApdO |I32 |call_argv |NN const char* sub_name|I32 flags|NN char** argv
+ApdO |I32 |call_method |NN const char* methname|I32 flags
+ApdO |I32 |call_pv |NN const char* sub_name|I32 flags
+ApdO |I32 |call_sv |NN SV* sv|VOL I32 flags
Ap |void |despatch_signals
Ap |OP * |doref |NN OP *o|I32 type|bool set_op_ref
-Apd |SV* |eval_pv |NN const char* p|I32 croak_on_error
-Apd |I32 |eval_sv |NN SV* sv|I32 flags
-Apd |SV* |get_sv |NN const char *name|I32 flags
-Apd |AV* |get_av |NN const char *name|I32 flags
-Apd |HV* |get_hv |NN const char *name|I32 flags
-Apd |CV* |get_cv |NN const char* name|I32 flags
+ApdO |SV* |eval_pv |NN const char* p|I32 croak_on_error
+ApdO |I32 |eval_sv |NN SV* sv|I32 flags
+ApdO |SV* |get_sv |NN const char *name|I32 flags
+ApdO |AV* |get_av |NN const char *name|I32 flags
+ApdO |HV* |get_hv |NN const char *name|I32 flags
+ApdO |CV* |get_cv |NN const char* name|I32 flags
Apd |CV* |get_cvn_flags |NN const char* name|STRLEN len|I32 flags
-Ap |int |init_i18nl10n |int printwarn
-Ap |int |init_i18nl14n |int printwarn
-Ap |void |new_collate |NULLOK const char* newcoll
-Ap |void |new_ctype |NN const char* newctype
-Ap |void |new_numeric |NULLOK const char* newcoll
+ApO |int |init_i18nl10n |int printwarn
+ApO |int |init_i18nl14n |int printwarn
+ApO |void |new_collate |NULLOK const char* newcoll
+ApO |void |new_ctype |NN const char* newctype
+ApO |void |new_numeric |NULLOK const char* newcoll
Ap |void |set_numeric_local
Ap |void |set_numeric_radix
Ap |void |set_numeric_standard
-Apd |void |require_pv |NN const char* pv
+ApdO |void |require_pv |NN const char* pv
Apd |void |pack_cat |NN SV *cat|NN const char *pat|NN const char *patend \
|NN SV **beglist|NN SV **endlist|NN SV ***next_in_list|U32 flags
Apd |void |packlist |NN SV *cat|NN const char *pat|NN const char *patend|NN SV **beglist|NN SV **endlist
Apda |char* |savepvn |NULLOK const char* pv|I32 len
Apda |char* |savesharedpv |NULLOK const char* pv
Apda |char* |savesharedpvn |NN const char *const pv|const STRLEN len
+Apda |char* |savesharedsvpv |NN SV *sv
Apda |char* |savesvpv |NN SV* sv
Ap |void |savestack_grow
Ap |void |savestack_grow_cnt |I32 need
Ap |void |save_destructor_x|DESTRUCTORFUNC_t f|NULLOK void* p
Apmb |void |save_freesv |NULLOK SV* sv
: Used in SAVEFREOP(), used in op.c, pp_ctl.c
-pmb |void |save_freeop |NULLOK OP* o
+Apmb |void |save_freeop |NULLOK OP* o
Apmb |void |save_freepv |NULLOK char* pv
Ap |void |save_generic_svref|NN SV** sptr
Ap |void |save_generic_pvref|NN char** str
Apmb |void |save_mortalizesv|NN SV* sv
Ap |void |save_nogv |NN GV* gv
: Used in SAVEFREOP(), used in gv.c, op.c, perl.c, pp_ctl.c, pp_sort.c
-pmb |void |save_op
+Apmb |void |save_op
Ap |SV* |save_scalar |NN GV* gv
Ap |void |save_pptr |NN char** pptr
Ap |void |save_vptr |NN void *ptr
Ap |SV* |save_svref |NN SV** sptr
Ap |void |save_pushptr |NULLOK void *const ptr|const int type
: Used by SAVECOPARYBASE() in op.c
-p |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type
+Ap |void |save_pushi32ptr|const I32 i|NULLOK void *const ptr|const int type
: Used by SAVESWITCHSTACK() in pp.c
-p |void |save_pushptrptr|NULLOK void *const ptr1 \
+Ap |void |save_pushptrptr|NULLOK void *const ptr1 \
|NULLOK void *const ptr2|const int type
#if defined(PERL_IN_SCOPE_C)
s |void |save_pushptri32ptr|NULLOK void *const ptr1|const I32 i \
Ap |I32 |start_subparse |I32 is_format|U32 flags
: Used in pp_ctl.c
p |void |sub_crush_depth|NN CV* cv
-Apd |bool |sv_2bool |NN SV *const sv
+Amd |bool |sv_2bool |NN SV *const sv
+Apd |bool |sv_2bool_flags |NN SV *const sv|const I32 flags
Apd |CV* |sv_2cv |NULLOK SV* sv|NN HV **const st|NN GV **const gvp \
|const I32 lref
Apd |IO* |sv_2io |NN SV *const sv
pd |void |sv_clean_objs
Apd |void |sv_clear |NN SV *const sv
Apd |I32 |sv_cmp |NULLOK SV *const sv1|NULLOK SV *const sv2
+Apd |I32 |sv_cmp_flags |NULLOK SV *const sv1|NULLOK SV *const sv2|const I32 flags
Apd |I32 |sv_cmp_locale |NULLOK SV *const sv1|NULLOK SV *const sv2
+Apd |I32 |sv_cmp_locale_flags |NULLOK SV *const sv1|NULLOK SV *const sv2|const I32 flags
#if defined(USE_LOCALE_COLLATE)
-Apd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp
+Amd |char* |sv_collxfrm |NN SV *const sv|NN STRLEN *const nxp
+Apd |char* |sv_collxfrm_flags |NN SV *const sv|NN STRLEN *const nxp|I32 const flags
#endif
Ap |OP* |sv_compile_2op |NN SV *sv|NN OP **startop \
|NN const char *code|NN PAD **padp
Ap |void |sv_dump |NN SV* sv
ApdR |bool |sv_derived_from|NN SV* sv|NN const char *const name
ApdR |bool |sv_does |NN SV* sv|NN const char *const name
-Apd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2
+Amd |I32 |sv_eq |NULLOK SV* sv1|NULLOK SV* sv2
+Apd |I32 |sv_eq_flags |NULLOK SV* sv1|NULLOK SV* sv2|const I32 flags
Apd |void |sv_free |NULLOK SV *const sv
: FIXME Used in SvREFCNT_dec() but only
: if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN)
#endif
Adp |int |nothreadhook
-END_EXTERN_C
-
#if defined(PERL_IN_DOOP_C)
sR |I32 |do_trans_simple |NN SV * const sv
sR |I32 |do_trans_count |NN SV * const sv
#endif
#if defined(PERL_IN_OP_C)
-: These are all indirectly referenced by globals.c. This is somewhat annoying.
-pR |OP* |ck_anoncode |NN OP *o
-pR |OP* |ck_bitop |NN OP *o
-pR |OP* |ck_concat |NN OP *o
-pR |OP* |ck_defined |NN OP *o
-pR |OP* |ck_delete |NN OP *o
-pR |OP* |ck_die |NN OP *o
-pR |OP* |ck_eof |NN OP *o
-pR |OP* |ck_eval |NN OP *o
-pR |OP* |ck_exec |NN OP *o
-pR |OP* |ck_exists |NN OP *o
-pR |OP* |ck_exit |NN OP *o
-pR |OP* |ck_ftst |NN OP *o
-pR |OP* |ck_fun |NN OP *o
-pR |OP* |ck_glob |NN OP *o
-pR |OP* |ck_grep |NN OP *o
-pR |OP* |ck_index |NN OP *o
-pR |OP* |ck_join |NN OP *o
-pR |OP* |ck_lfun |NN OP *o
-pR |OP* |ck_listiob |NN OP *o
-pR |OP* |ck_match |NN OP *o
-pR |OP* |ck_method |NN OP *o
-pR |OP* |ck_null |NN OP *o
-pR |OP* |ck_open |NN OP *o
-pR |OP* |ck_readline |NN OP *o
-pR |OP* |ck_repeat |NN OP *o
-pR |OP* |ck_require |NN OP *o
-pR |OP* |ck_return |NN OP *o
-pR |OP* |ck_rfun |NN OP *o
-pR |OP* |ck_rvconst |NN OP *o
-pR |OP* |ck_sassign |NN OP *o
-pR |OP* |ck_select |NN OP *o
-pR |OP* |ck_shift |NN OP *o
-pR |OP* |ck_sort |NN OP *o
-pR |OP* |ck_spair |NN OP *o
-pR |OP* |ck_split |NN OP *o
-pR |OP* |ck_subr |NN OP *o
-pR |OP* |ck_substr |NN OP *o
-pR |OP* |ck_svconst |NN OP *o
-pR |OP* |ck_trunc |NN OP *o
-pR |OP* |ck_unpack |NN OP *o
-pR |OP* |ck_each |NN OP *o
sRn |bool |is_handle_constructor|NN const OP *o|I32 numargs
sR |I32 |is_list_assignment|NULLOK const OP *o
# ifdef USE_ITHREADS
# endif
# endif
sR |I32 |expect_number |NN char **const pattern
-#
sn |STRLEN |sv_pos_u2b_forwards|NN const U8 *const start \
|NN const U8 *const send|NN STRLEN *const uoffset \
|NN bool *const at_end
sR |SV* |swash_get |NN SV* swash|UV start|UV span
#endif
-START_EXTERN_C
-
Apd |void |sv_setsv_flags |NN SV *dstr|NULLOK SV *sstr|const I32 flags
Apd |void |sv_catpvn_flags|NN SV *const dstr|NN const char *sstr|const STRLEN len \
|const I32 flags
+Apd |void |sv_catpv_flags |NN SV *dstr|NN const char *sstr \
+ |const I32 flags
Apd |void |sv_catsv_flags |NN SV *const dsv|NULLOK SV *const ssv|const I32 flags
Apmd |STRLEN |sv_utf8_upgrade_flags|NN SV *const sv|const I32 flags
Ap |STRLEN |sv_utf8_upgrade_flags_grow|NN SV *const sv|const I32 flags|STRLEN extra
#endif
#endif
+: This function is an implementation detail. The public API for this is
+: XS_VERSION_BOOTCHECK
+Xpo |void |xs_version_bootcheck|U32 items|U32 ax|NN const char *xs_p \
+ |STRLEN xs_len
+: This function is an implementation detail. The public API for this is
+: XS_APIVERSION_BOOTCHECK
+Xpo |void |xs_apiversion_bootcheck|NN SV *module|NN const char *api_p \
+ |STRLEN api_len
+
#ifndef HAS_STRLCAT
Apno |Size_t |my_strlcat |NULLOK char *dst|NULLOK const char *src|Size_t size
#endif
Mp |void |xmldump_eval
Mp |char* |sv_catxmlsv |NN SV *dsv|NN SV *ssv
Mp |char* |sv_catxmlpvn |NN SV *dsv|NN const char *pv|STRLEN len|int utf8
+Mp |char* |sv_catxmlpv |NN SV *dsv|NN const char *pv|int utf8
Mp |char* |sv_xmlpeek |NN SV* sv
Mp |void |do_pmop_xmldump|I32 level|NN PerlIO *file \
|NULLOK const PMOP *pm
|NULLOK STRLEN *len|NULLOK U32 *flags
: Only used in op.c
xpoM |void|store_cop_label \
- |NN COP *cop|NN const char *label|STRLEN len|U32 flags
+ |NN COP *const cop|NN const char *label|STRLEN len|U32 flags
xpo |int |keyword_plugin_standard|NN char* keyword_ptr|STRLEN keyword_len|NN OP** op_ptr
: Used in perly.y
|NN PerlInterpreter *const to
Anop |void |clone_params_del|NN CLONE_PARAMS *param
#endif
-END_EXTERN_C
-/*
- * ex: set ts=8 sts=4 sw=4 noet:
- */
+: ex: set ts=8 sts=4 sw=4 noet: