This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Do what perl_clone() does for sharedsv functions.
[perl5.git] / proto.h
diff --git a/proto.h b/proto.h
index e69c6f9..077bc92 100644 (file)
--- a/proto.h
+++ b/proto.h
@@ -38,23 +38,7 @@ PERL_CALLCONV void   Perl_set_context(void *thx);
 END_EXTERN_C
 
 /* functions with flag 'n' should come before here */
-#if defined(PERL_OBJECT)
-class CPerlObj {
-public:
-       struct interpreter interp;
-       CPerlObj(IPerlMem*, IPerlMem*, IPerlMem*, IPerlEnv*, IPerlStdIO*,
-           IPerlLIO*, IPerlDir*, IPerlSock*, IPerlProc*);
-       void* operator new(size_t nSize, IPerlMem *pvtbl);
-#ifndef __BORLANDC__
-       static void operator delete(void* pPerl, IPerlMem *pvtbl);
-#endif
-       int do_aspawn (void *vreally, void **vmark, void **vsp);
-#endif
-#if defined(PERL_OBJECT)
-public:
-#else
 START_EXTERN_C
-#endif
 #  include "pp_proto.h"
 PERL_CALLCONV SV*      Perl_amagic_call(pTHX_ SV* left, SV* right, int method, int dir);
 PERL_CALLCONV bool     Perl_Gv_AMupdate(pTHX_ HV* stash);
@@ -406,8 +390,11 @@ PERL_CALLCONV void Perl_load_module(pTHX_ U32 flags, SV* name, SV* ver, ...);
 PERL_CALLCONV void     Perl_vload_module(pTHX_ U32 flags, SV* name, SV* ver, va_list* args);
 PERL_CALLCONV OP*      Perl_localize(pTHX_ OP* arg, I32 lexical);
 PERL_CALLCONV I32      Perl_looks_like_number(pTHX_ SV* sv);
+PERL_CALLCONV UV       Perl_grok_bin(pTHX_ char* start, STRLEN* len, I32* flags, NV *result);
+PERL_CALLCONV UV       Perl_grok_hex(pTHX_ char* start, STRLEN* len, I32* flags, NV *result);
 PERL_CALLCONV int      Perl_grok_number(pTHX_ const char *pv, STRLEN len, UV *valuep);
 PERL_CALLCONV bool     Perl_grok_numeric_radix(pTHX_ const char **sp, const char *send);
+PERL_CALLCONV UV       Perl_grok_oct(pTHX_ char* start, STRLEN* len, I32* flags, NV *result);
 PERL_CALLCONV int      Perl_magic_clearenv(pTHX_ SV* sv, MAGIC* mg);
 PERL_CALLCONV int      Perl_magic_clear_all_env(pTHX_ SV* sv, MAGIC* mg);
 PERL_CALLCONV int      Perl_magic_clearpack(pTHX_ SV* sv, MAGIC* mg);
@@ -506,11 +493,9 @@ PERL_CALLCONV I32  Perl_my_memcmp(const char* s1, const char* s2, I32 len);
 #if !defined(HAS_MEMSET)
 PERL_CALLCONV void*    Perl_my_memset(char* loc, I32 ch, I32 len);
 #endif
-#if !defined(PERL_OBJECT)
 PERL_CALLCONV I32      Perl_my_pclose(pTHX_ PerlIO* ptr);
 PERL_CALLCONV PerlIO*  Perl_my_popen(pTHX_ char* cmd, char* mode);
 PERL_CALLCONV PerlIO*  Perl_my_popen_list(pTHX_ char* mode, int n, SV ** args);
-#endif
 PERL_CALLCONV void     Perl_my_setenv(pTHX_ char* nam, char* val);
 PERL_CALLCONV I32      Perl_my_stat(pTHX);
 PERL_CALLCONV char *   Perl_my_strftime(pTHX_ char *fmt, int sec, int min, int hour, int mday, int mon, int year, int wday, int yday, int isdst);
@@ -594,13 +579,6 @@ PERL_CALLCONV void Perl_pad_reset(pTHX);
 PERL_CALLCONV void     Perl_pad_swipe(pTHX_ PADOFFSET po);
 PERL_CALLCONV void     Perl_peep(pTHX_ OP* o);
 PERL_CALLCONV PerlIO*  Perl_start_glob(pTHX_ SV* pattern, IO *io);
-#if defined(PERL_OBJECT)
-PERL_CALLCONV void     Perl_construct(pTHX);
-PERL_CALLCONV void     Perl_destruct(pTHX);
-PERL_CALLCONV void     Perl_free(pTHX);
-PERL_CALLCONV int      Perl_run(pTHX);
-PERL_CALLCONV int      Perl_parse(pTHX_ XSINIT_t xsinit, int argc, char** argv, char** env);
-#endif
 #if defined(USE_5005THREADS)
 PERL_CALLCONV struct perl_thread*      Perl_new_struct_thread(pTHX_ struct perl_thread *t);
 #endif
@@ -728,6 +706,7 @@ PERL_CALLCONV NV    Perl_sv_2nv(pTHX_ SV* sv);
 PERL_CALLCONV char*    Perl_sv_2pv(pTHX_ SV* sv, STRLEN* lp);
 PERL_CALLCONV char*    Perl_sv_2pvutf8(pTHX_ SV* sv, STRLEN* lp);
 PERL_CALLCONV char*    Perl_sv_2pvbyte(pTHX_ SV* sv, STRLEN* lp);
+PERL_CALLCONV char*    Perl_sv_pvn_nomg(pTHX_ SV* sv, STRLEN* lp);
 PERL_CALLCONV UV       Perl_sv_2uv(pTHX_ SV* sv);
 PERL_CALLCONV IV       Perl_sv_iv(pTHX_ SV* sv);
 PERL_CALLCONV UV       Perl_sv_uv(pTHX_ SV* sv);
@@ -984,16 +963,12 @@ PERL_CALLCONV void        Perl_ptr_table_free(pTHX_ PTR_TBL_t *tbl);
 PERL_CALLCONV void     Perl_sys_intern_clear(pTHX);
 PERL_CALLCONV void     Perl_sys_intern_init(pTHX);
 #endif
-#if defined(PERL_CUSTOM_OPS)
+
 PERL_CALLCONV char *   Perl_custom_op_name(pTHX_ OP* op);
 PERL_CALLCONV char *   Perl_custom_op_desc(pTHX_ OP* op);
-#endif
 
-#if defined(PERL_OBJECT)
-protected:
-#else
+
 END_EXTERN_C
-#endif
 
 #if defined(PERL_IN_AV_C) || defined(PERL_DECL_PROT)
 STATIC I32     S_avhv_index_sv(pTHX_ SV* sv);
@@ -1201,7 +1176,7 @@ STATIC void       S_debprof(pTHX_ OP *o);
 STATIC SV*     S_save_scalar_at(pTHX_ SV **sptr);
 #endif
 
-#if defined(USE_ITHREADS) && (defined(PERL_IN_SHAREDSV_C) || defined(PERL_DECL_PROT))
+#if defined(USE_ITHREADS)
 PERL_CALLCONV void     Perl_sharedsv_init(pTHX);
 PERL_CALLCONV shared_sv*       Perl_sharedsv_new(pTHX);
 PERL_CALLCONV shared_sv*       Perl_sharedsv_find(pTHX_ SV* sv);
@@ -1273,7 +1248,7 @@ STATIC SV*        S_gv_share(pTHX_ SV *sv);
 #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_version(pTHX_ char *start, int guessing);
 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 int     S_pending_ident(pTHX);
@@ -1338,10 +1313,6 @@ STATIC void      S_xstat(pTHX_ int);
 #  endif
 #endif
 
-#if defined(PERL_OBJECT)
-};
-#endif
-
 START_EXTERN_C
 
 PERL_CALLCONV void     Perl_sv_setsv_flags(pTHX_ SV* dsv, SV* ssv, I32 flags);