📄 proto.h
字号:
STATIC CV* S_cv_clone2(pTHX_ CV *proto, CV *outside);STATIC bool S_scalar_mod_type(pTHX_ OP *o, I32 type);STATIC OP * S_my_kid(pTHX_ OP *o, OP *attrs);STATIC OP * S_dup_attrlist(pTHX_ OP *o);STATIC void S_apply_attrs(pTHX_ HV *stash, SV *target, OP *attrs);# if defined(PL_OP_SLAB_ALLOC)STATIC void* S_Slab_Alloc(pTHX_ int m, size_t sz);# endif#endif#if defined(PERL_IN_PERL_C) || defined(PERL_DECL_PROT)STATIC void S_find_beginning(pTHX);STATIC void S_forbid_setid(pTHX_ char *);STATIC void S_incpush(pTHX_ char *, int, int);STATIC void S_init_interp(pTHX);STATIC void S_init_ids(pTHX);STATIC void S_init_lexer(pTHX);STATIC void S_init_main_stash(pTHX);STATIC void S_init_perllib(pTHX);STATIC void S_init_postdump_symbols(pTHX_ int, char **, char **);STATIC void S_init_predump_symbols(pTHX);STATIC void S_my_exit_jump(pTHX) __attribute__((noreturn));STATIC void S_nuke_stacks(pTHX);STATIC void S_open_script(pTHX_ char *, bool, SV *, int *fd);STATIC void S_usage(pTHX_ char *);STATIC void S_validate_suid(pTHX_ char *, char*, int);# if defined(IAMSUID)STATIC int S_fd_on_nosuid_fs(pTHX_ int fd);# endifSTATIC void* S_parse_body(pTHX_ char **env, XSINIT_t xsinit);STATIC void* S_run_body(pTHX_ I32 oldscope);STATIC void S_call_body(pTHX_ OP *myop, int is_eval);STATIC void* S_call_list_body(pTHX_ CV *cv);#if defined(PERL_FLEXIBLE_EXCEPTIONS)STATIC void* S_vparse_body(pTHX_ va_list args);STATIC void* S_vrun_body(pTHX_ va_list args);STATIC void* S_vcall_body(pTHX_ va_list args);STATIC void* S_vcall_list_body(pTHX_ va_list args);#endif# if defined(USE_THREADS)STATIC struct perl_thread * S_init_main_thread(pTHX);# endif#endif#if defined(PERL_IN_PP_C) || defined(PERL_DECL_PROT)STATIC void S_doencodes(pTHX_ SV* sv, char* s, I32 len);STATIC SV* S_refto(pTHX_ SV* sv);STATIC U32 S_seed(pTHX);STATIC SV* S_mul128(pTHX_ SV *sv, U8 m);STATIC SV* S_is_an_int(pTHX_ char *s, STRLEN l);STATIC int S_div128(pTHX_ SV *pnum, bool *done);#endif#if defined(PERL_IN_PP_CTL_C) || defined(PERL_DECL_PROT)STATIC OP* S_docatch(pTHX_ OP *o);STATIC void* S_docatch_body(pTHX);#if defined(PERL_FLEXIBLE_EXCEPTIONS)STATIC void* S_vdocatch_body(pTHX_ va_list args);#endifSTATIC OP* S_dofindlabel(pTHX_ OP *o, char *label, OP **opstack, OP **oplimit);STATIC void S_doparseform(pTHX_ SV *sv);STATIC I32 S_dopoptoeval(pTHX_ I32 startingblock);STATIC I32 S_dopoptolabel(pTHX_ char *label);STATIC I32 S_dopoptoloop(pTHX_ I32 startingblock);STATIC I32 S_dopoptosub(pTHX_ I32 startingblock);STATIC I32 S_dopoptosub_at(pTHX_ PERL_CONTEXT* cxstk, I32 startingblock);STATIC void S_save_lines(pTHX_ AV *array, SV *sv);STATIC OP* S_doeval(pTHX_ int gimme, OP** startop);STATIC PerlIO * S_doopen_pmc(pTHX_ const char *name, const char *mode);STATIC void S_qsortsv(pTHX_ SV ** array, size_t num_elts, SVCOMPARE_t f);#endif#if defined(PERL_IN_PP_HOT_C) || defined(PERL_DECL_PROT)STATIC int S_do_maybe_phash(pTHX_ AV *ary, SV **lelem, SV **firstlelem, SV **relem, SV **lastrelem);STATIC void S_do_oddball(pTHX_ HV *hash, SV **relem, SV **firstrelem);STATIC CV* S_get_db_sub(pTHX_ SV **svp, CV *cv);STATIC SV* S_method_common(pTHX_ SV* meth, U32* hashp);#endif#if defined(PERL_IN_PP_SYS_C) || defined(PERL_DECL_PROT)STATIC OP* S_doform(pTHX_ CV *cv, GV *gv, OP *retop);STATIC int S_emulate_eaccess(pTHX_ const char* path, Mode_t mode);# if !defined(HAS_MKDIR) || !defined(HAS_RMDIR)STATIC int S_dooneliner(pTHX_ char *cmd, char *filename);# endif#endif#if defined(PERL_IN_REGCOMP_C) || defined(PERL_DECL_PROT)STATIC regnode* S_reg(pTHX_ I32, I32 *);STATIC regnode* S_reganode(pTHX_ U8, U32);STATIC regnode* S_regatom(pTHX_ I32 *);STATIC regnode* S_regbranch(pTHX_ I32 *, I32);STATIC void S_reguni(pTHX_ UV, char *, STRLEN*);STATIC regnode* S_regclass(pTHX);STATIC regnode* S_regclassutf8(pTHX);STATIC I32 S_regcurly(pTHX_ char *);STATIC regnode* S_reg_node(pTHX_ U8);STATIC regnode* S_regpiece(pTHX_ I32 *);STATIC void S_reginsert(pTHX_ U8, regnode *);STATIC void S_regoptail(pTHX_ regnode *, regnode *);STATIC void S_regtail(pTHX_ regnode *, regnode *);STATIC char* S_regwhite(pTHX_ char *, char *);STATIC char* S_nextchar(pTHX);STATIC regnode* S_dumpuntil(pTHX_ regnode *start, regnode *node, regnode *last, SV* sv, I32 l);STATIC void S_put_byte(pTHX_ SV* sv, int c);STATIC void S_scan_commit(pTHX_ struct scan_data_t *data);STATIC void S_cl_anything(pTHX_ struct regnode_charclass_class *cl);STATIC int S_cl_is_anything(pTHX_ struct regnode_charclass_class *cl);STATIC void S_cl_init(pTHX_ struct regnode_charclass_class *cl);STATIC void S_cl_init_zero(pTHX_ struct regnode_charclass_class *cl);STATIC void S_cl_and(pTHX_ struct regnode_charclass_class *cl, struct regnode_charclass_class *and_with);STATIC void S_cl_or(pTHX_ struct regnode_charclass_class *cl, struct regnode_charclass_class *or_with);STATIC I32 S_study_chunk(pTHX_ regnode **scanp, I32 *deltap, regnode *last, struct scan_data_t *data, U32 flags);STATIC I32 S_add_data(pTHX_ I32 n, char *s);STATIC void S_re_croak2(pTHX_ const char* pat1, const char* pat2, ...) __attribute__((noreturn));STATIC I32 S_regpposixcc(pTHX_ I32 value);STATIC void S_checkposixcc(pTHX);#endif#if defined(PERL_IN_REGEXEC_C) || defined(PERL_DECL_PROT)STATIC I32 S_regmatch(pTHX_ regnode *prog);STATIC I32 S_regrepeat(pTHX_ regnode *p, I32 max);STATIC I32 S_regrepeat_hard(pTHX_ regnode *p, I32 max, I32 *lp);STATIC I32 S_regtry(pTHX_ regexp *prog, char *startpos);STATIC bool S_reginclass(pTHX_ regnode *p, I32 c);STATIC bool S_reginclassutf8(pTHX_ regnode *f, U8* p);STATIC CHECKPOINT S_regcppush(pTHX_ I32 parenfloor);STATIC char* S_regcppop(pTHX);STATIC char* S_regcp_set_to(pTHX_ I32 ss);STATIC void S_cache_re(pTHX_ regexp *prog);STATIC U8* S_reghop(pTHX_ U8 *pos, I32 off);STATIC U8* S_reghopmaybe(pTHX_ U8 *pos, I32 off);STATIC char* S_find_byclass(pTHX_ regexp * prog, regnode *c, char *s, char *strend, char *startpos, I32 norun);#endif#if defined(PERL_IN_RUN_C) || defined(PERL_DECL_PROT)STATIC void S_debprof(pTHX_ OP *o);#endif#if defined(PERL_IN_SCOPE_C) || defined(PERL_DECL_PROT)STATIC SV* S_save_scalar_at(pTHX_ SV **sptr);#endif#if defined(PERL_IN_SV_C) || defined(PERL_DECL_PROT)STATIC IV S_asIV(pTHX_ SV* sv);STATIC UV S_asUV(pTHX_ SV* sv);STATIC SV* S_more_sv(pTHX);STATIC void S_more_xiv(pTHX);STATIC void S_more_xnv(pTHX);STATIC void S_more_xpv(pTHX);STATIC void S_more_xpviv(pTHX);STATIC void S_more_xpvnv(pTHX);STATIC void S_more_xpvcv(pTHX);STATIC void S_more_xpvav(pTHX);STATIC void S_more_xpvhv(pTHX);STATIC void S_more_xpvmg(pTHX);STATIC void S_more_xpvlv(pTHX);STATIC void S_more_xpvbm(pTHX);STATIC void S_more_xrv(pTHX);STATIC XPVIV* S_new_xiv(pTHX);STATIC XPVNV* S_new_xnv(pTHX);STATIC XPV* S_new_xpv(pTHX);STATIC XPVIV* S_new_xpviv(pTHX);STATIC XPVNV* S_new_xpvnv(pTHX);STATIC XPVCV* S_new_xpvcv(pTHX);STATIC XPVAV* S_new_xpvav(pTHX);STATIC XPVHV* S_new_xpvhv(pTHX);STATIC XPVMG* S_new_xpvmg(pTHX);STATIC XPVLV* S_new_xpvlv(pTHX);STATIC XPVBM* S_new_xpvbm(pTHX);STATIC XRV* S_new_xrv(pTHX);STATIC void S_del_xiv(pTHX_ XPVIV* p);STATIC void S_del_xnv(pTHX_ XPVNV* p);STATIC void S_del_xpv(pTHX_ XPV* p);STATIC void S_del_xpviv(pTHX_ XPVIV* p);STATIC void S_del_xpvnv(pTHX_ XPVNV* p);STATIC void S_del_xpvcv(pTHX_ XPVCV* p);STATIC void S_del_xpvav(pTHX_ XPVAV* p);STATIC void S_del_xpvhv(pTHX_ XPVHV* p);STATIC void S_del_xpvmg(pTHX_ XPVMG* p);STATIC void S_del_xpvlv(pTHX_ XPVLV* p);STATIC void S_del_xpvbm(pTHX_ XPVBM* p);STATIC void S_del_xrv(pTHX_ XRV* p);STATIC void S_sv_unglob(pTHX_ SV* sv);STATIC void S_not_a_number(pTHX_ SV *sv);STATIC I32 S_visit(pTHX_ SVFUNC_t f);# if defined(DEBUGGING)STATIC void S_del_sv(pTHX_ SV *p);# endif#endif#if defined(PERL_IN_TOKE_C) || defined(PERL_DECL_PROT)STATIC void S_check_uni(pTHX);STATIC void S_force_next(pTHX_ I32 type);STATIC char* S_force_version(pTHX_ char *start);STATIC char* S_force_word(pTHX_ char *start, int token, int check_keyword, int allow_pack, int allow_tick);STATIC SV* S_tokeq(pTHX_ SV *sv);STATIC char* S_scan_const(pTHX_ char *start);STATIC char* S_scan_formline(pTHX_ char *s);STATIC char* S_scan_heredoc(pTHX_ char *s);STATIC char* S_scan_ident(pTHX_ char *s, char *send, char *dest, STRLEN destlen, I32 ck_uni);STATIC char* S_scan_inputsymbol(pTHX_ char *start);STATIC char* S_scan_pat(pTHX_ char *start, I32 type);STATIC char* S_scan_str(pTHX_ char *start, int keep_quoted, int keep_delims);STATIC char* S_scan_subst(pTHX_ char *start);STATIC char* S_scan_trans(pTHX_ char *start);STATIC char* S_scan_word(pTHX_ char *s, char *dest, STRLEN destlen, int allow_package, STRLEN *slp);STATIC char* S_skipspace(pTHX_ char *s);STATIC char* S_swallow_bom(pTHX_ U8 *s);STATIC void S_checkcomma(pTHX_ char *s, char *name, char *what);STATIC void S_force_ident(pTHX_ char *s, int kind);STATIC void S_incline(pTHX_ char *s);STATIC int S_intuit_method(pTHX_ char *s, GV *gv);STATIC int S_intuit_more(pTHX_ char *s);STATIC I32 S_lop(pTHX_ I32 f, int x, char *s);STATIC void S_missingterm(pTHX_ char *s);STATIC void S_no_op(pTHX_ char *what, char *s);STATIC void S_set_csh(pTHX);STATIC I32 S_sublex_done(pTHX);STATIC I32 S_sublex_push(pTHX);STATIC I32 S_sublex_start(pTHX);STATIC char * S_filter_gets(pTHX_ SV *sv, PerlIO *fp, STRLEN append);STATIC HV * S_find_in_my_stash(pTHX_ char *pkgname, I32 len);STATIC SV* S_new_constant(pTHX_ char *s, STRLEN len, const char *key, SV *sv, SV *pv, const char *type);STATIC int S_ao(pTHX_ int toketype);STATIC void S_depcom(pTHX);STATIC char* S_incl_perldb(pTHX);#if 0STATIC I32 S_utf16_textfilter(pTHX_ int idx, SV *sv, int maxlen);STATIC I32 S_utf16rev_textfilter(pTHX_ int idx, SV *sv, int maxlen);#endif# if defined(CRIPPLED_CC)STATIC int S_uni(pTHX_ I32 f, char *s);# endif# if defined(PERL_CR_FILTER)STATIC I32 S_cr_textfilter(pTHX_ int idx, SV *sv, int maxlen);# endif#endif#if defined(PERL_IN_UNIVERSAL_C) || defined(PERL_DECL_PROT)STATIC SV* S_isa_lookup(pTHX_ HV *stash, const char *name, int len, int level);#endif#if defined(PERL_IN_UTIL_C) || defined(PERL_DECL_PROT)STATIC char* S_stdize_locale(pTHX_ char* locs);STATIC SV* S_mess_alloc(pTHX);# if defined(LEAKTEST)STATIC void S_xstat(pTHX_ int);# endif#endif#if defined(PERL_OBJECT)};#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -