⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ppport.pm

📁 视频监控网络部分的协议ddns,的模块的实现代码,请大家大胆指正.
💻 PM
📖 第 1 页 / 共 5 页
字号:
##################################################################################  !!!!! Do NOT edit this file directly! -- Edit PPPort_pm.PL instead. !!!!!##  This file was automatically generated from the definition files in the#  parts/inc/ subdirectory by PPPort_pm.PL. To learn more about how all this#  works, please read the F<HACKERS> file that came with this distribution.###################################################################################  Perl/Pollution/Portability###################################################################################  $Revision: 57 $#  $Author: mhx $#  $Date: 2007/09/11 23:28:24 +0200 $###################################################################################  Version 3.x, Copyright (C) 2004-2007, Marcus Holland-Moritz.#  Version 2.x, Copyright (C) 2001, Paul Marquess.#  Version 1.x, Copyright (C) 1999, Kenneth Albanowski.##  This program is free software; you can redistribute it and/or#  modify it under the same terms as Perl itself.#################################################################################=head1 NAMEDevel::PPPort - Perl/Pollution/Portability=head1 SYNOPSIS    Devel::PPPort::WriteFile();   # defaults to ./ppport.h    Devel::PPPort::WriteFile('someheader.h');=head1 DESCRIPTIONPerl's API has changed over time, gaining new features, new functions,increasing its flexibility, and reducing the impact on the C namespaceenvironment (reduced pollution). The header file written by this module,typically F<ppport.h>, attempts to bring some of the newer Perl APIfeatures to older versions of Perl, so that you can worry less aboutkeeping track of old releases, but users can still reap the benefit.C<Devel::PPPort> contains a single function, called C<WriteFile>. Itsonly purpose is to write the F<ppport.h> C header file. This filecontains a series of macros and, if explicitly requested, functions thatallow XS modules to be built using older versions of Perl. Currently,Perl versions from 5.003 to 5.10.0 are supported.This module is used by C<h2xs> to write the file F<ppport.h>.=head2 Why use ppport.h?You should use F<ppport.h> in modern code so that your code will workwith the widest range of Perl interpreters possible, without significantadditional work.You should attempt older code to fully use F<ppport.h>, because thereduced pollution of newer Perl versions is an important thing. It's soimportant that the old polluting ways of original Perl modules will not besupported very far into the future, and your module will almost certainlybreak! By adapting to it now, you'll gain compatibility and a sense ofhaving done the electronic ecology some good.=head2 How to use ppport.hDon't direct the users of your module to download C<Devel::PPPort>.They are most probably no XS writers. Also, don't make F<ppport.h>optional. Rather, just take the most recent copy of F<ppport.h> thatyou can find (e.g. by generating it with the latest C<Devel::PPPort>release from CPAN), copy it into your project, adjust your project touse it, and distribute the header along with your module.=head2 Running ppport.hBut F<ppport.h> is more than just a C header. It's also a Perl scriptthat can check your source code. It will suggest hints and portabilitynotes, and can even make suggestions on how to change your code. Youcan run it like any other Perl program:    perl ppport.h [options] [files]It also has embedded documentation, so you can use    perldoc ppport.hto find out more about how to use it.=head1 FUNCTIONS=head2 WriteFileC<WriteFile> takes one optional argument. When called with oneargument, it expects to be passed a filename. When called withno arguments, it defaults to the filename F<ppport.h>.The function returns a true value if the file was written successfully.Otherwise it returns a false value.=head1 COMPATIBILITYF<ppport.h> supports Perl versions from 5.003 to 5.10.0in threaded and non-threaded configurations.=head2 Provided Perl compatibility APIThe header file written by this module, typically F<ppport.h>, providesaccess to the following elements of the Perl API that is not availablein older Perl releases:    _aMY_CXT    _pMY_CXT    aMY_CXT    aMY_CXT_    aTHX    aTHX_    aTHXR    aTHXR_    AvFILLp    boolSV    call_argv    call_method    call_pv    call_sv    ckWARN    CopFILE    CopFILE_set    CopFILEAV    CopFILEGV    CopFILEGV_set    CopFILESV    CopSTASH    CopSTASH_eq    CopSTASH_set    CopSTASHPV    CopSTASHPV_set    CopyD    dAX    dAXMARK    DEFSV    dITEMS    dMY_CXT    dMY_CXT_SV    dNOOP    dTHR    dTHX    dTHXa    dTHXoa    dTHXR    dUNDERBAR    dVAR    dXCPT    dXSTARG    END_EXTERN_C    ERRSV    eval_pv    eval_sv    EXTERN_C    get_av    get_cv    get_hv    get_sv    grok_bin    grok_hex    grok_number    GROK_NUMERIC_RADIX    grok_numeric_radix    grok_oct    gv_stashpvn    hv_fetchs    hv_stores    IN_LOCALE    IN_LOCALE_COMPILETIME    IN_LOCALE_RUNTIME    IN_PERL_COMPILETIME    INT2PTR    IS_NUMBER_GREATER_THAN_UV_MAX    IS_NUMBER_IN_UV    IS_NUMBER_INFINITY    IS_NUMBER_NAN    IS_NUMBER_NEG    IS_NUMBER_NOT_INT    IVdf    IVSIZE    IVTYPE    load_module    memEQ    memNE    MoveD    mPUSHi    mPUSHn    mPUSHp    mPUSHu    mXPUSHi    mXPUSHn    mXPUSHp    mXPUSHu    MY_CXT    MY_CXT_CLONE    MY_CXT_INIT    my_snprintf    my_strlcat    my_strlcpy    newCONSTSUB    newRV_inc    newRV_noinc    newSVpvn    newSVpvn_share    newSVpvs    newSVuv    Newx    Newxc    Newxz    NOOP    NUM2PTR    NVef    NVff    NVgf    NVTYPE    packWARN    PERL_ABS    PERL_BCDVERSION    PERL_GCC_BRACE_GROUPS_FORBIDDEN    PERL_HASH    PERL_INT_MAX    PERL_INT_MIN    PERL_LONG_MAX    PERL_LONG_MIN    PERL_MAGIC_arylen    PERL_MAGIC_backref    PERL_MAGIC_bm    PERL_MAGIC_collxfrm    PERL_MAGIC_dbfile    PERL_MAGIC_dbline    PERL_MAGIC_defelem    PERL_MAGIC_env    PERL_MAGIC_envelem    PERL_MAGIC_ext    PERL_MAGIC_fm    PERL_MAGIC_glob    PERL_MAGIC_isa    PERL_MAGIC_isaelem    PERL_MAGIC_mutex    PERL_MAGIC_nkeys    PERL_MAGIC_overload    PERL_MAGIC_overload_elem    PERL_MAGIC_overload_table    PERL_MAGIC_pos    PERL_MAGIC_qr    PERL_MAGIC_regdata    PERL_MAGIC_regdatum    PERL_MAGIC_regex_global    PERL_MAGIC_shared    PERL_MAGIC_shared_scalar    PERL_MAGIC_sig    PERL_MAGIC_sigelem    PERL_MAGIC_substr    PERL_MAGIC_sv    PERL_MAGIC_taint    PERL_MAGIC_tied    PERL_MAGIC_tiedelem    PERL_MAGIC_tiedscalar    PERL_MAGIC_utf8    PERL_MAGIC_uvar    PERL_MAGIC_uvar_elem    PERL_MAGIC_vec    PERL_MAGIC_vstring    PERL_QUAD_MAX    PERL_QUAD_MIN    PERL_REVISION    PERL_SCAN_ALLOW_UNDERSCORES    PERL_SCAN_DISALLOW_PREFIX    PERL_SCAN_GREATER_THAN_UV_MAX    PERL_SCAN_SILENT_ILLDIGIT    PERL_SHORT_MAX    PERL_SHORT_MIN    PERL_SIGNALS_UNSAFE_FLAG    PERL_SUBVERSION    PERL_UCHAR_MAX    PERL_UCHAR_MIN    PERL_UINT_MAX    PERL_UINT_MIN    PERL_ULONG_MAX    PERL_ULONG_MIN    PERL_UNUSED_ARG    PERL_UNUSED_CONTEXT    PERL_UNUSED_DECL    PERL_UNUSED_VAR    PERL_UQUAD_MAX    PERL_UQUAD_MIN    PERL_USE_GCC_BRACE_GROUPS    PERL_USHORT_MAX    PERL_USHORT_MIN    PERL_VERSION    Perl_warner    Perl_warner_nocontext    PL_compiling    PL_copline    PL_curcop    PL_curstash    PL_DBsignal    PL_DBsingle    PL_DBsub    PL_DBtrace    PL_debstash    PL_defgv    PL_diehook    PL_dirty    PL_dowarn    PL_errgv    PL_expect    PL_hexdigit    PL_hints    PL_laststatval    PL_na    PL_no_modify    PL_perl_destruct_level    PL_perldb    PL_ppaddr    PL_rsfp    PL_rsfp_filters    PL_signals    PL_stack_base    PL_stack_sp    PL_statcache    PL_stdingv    PL_Sv    PL_sv_arenaroot    PL_sv_no    PL_sv_undef    PL_sv_yes    PL_tainted    PL_tainting    pMY_CXT    pMY_CXT_    Poison    PoisonFree    PoisonNew    PoisonWith    pTHX    pTHX_    PTR2IV    PTR2NV    PTR2ul    PTR2UV    PTRV    PUSHmortal    PUSHu    SAVE_DEFSV    START_EXTERN_C    START_MY_CXT    STMT_END    STMT_START    STR_WITH_LEN    sv_2pv_flags    sv_2pv_nolen    sv_2pvbyte    sv_2pvbyte_nolen    sv_2uv    sv_catpv_mg    sv_catpvf_mg    sv_catpvf_mg_nocontext    sv_catpvn_mg    sv_catpvn_nomg    sv_catpvs    sv_catsv_mg    sv_catsv_nomg    SV_CONST_RETURN    SV_COW_DROP_PV    SV_COW_SHARED_HASH_KEYS    SV_GMAGIC    SV_HAS_TRAILING_NUL    SV_IMMEDIATE_UNREF    sv_magic_portable    SV_MUTABLE_RETURN    SV_NOSTEAL    sv_pvn_force_flags    sv_pvn_nomg    sv_setiv_mg    sv_setnv_mg    sv_setpv_mg    sv_setpvf_mg    sv_setpvf_mg_nocontext    sv_setpvn_mg    sv_setpvs    sv_setsv_mg    sv_setsv_nomg    sv_setuv    sv_setuv_mg    SV_SMAGIC    sv_usepvn_mg    SV_UTF8_NO_ENCODING    sv_uv    sv_vcatpvf    sv_vcatpvf_mg    sv_vsetpvf    sv_vsetpvf_mg    SVf    SvGETMAGIC    SvIV_nomg    SvMAGIC_set    SvPV_const    SvPV_flags    SvPV_flags_const    SvPV_flags_const_nolen    SvPV_flags_mutable    SvPV_force    SvPV_force_flags    SvPV_force_flags_mutable    SvPV_force_flags_nolen    SvPV_force_mutable    SvPV_force_nolen    SvPV_force_nomg    SvPV_force_nomg_nolen    SvPV_mutable    SvPV_nolen    SvPV_nolen_const    SvPV_nomg    SvPV_nomg_const    SvPV_nomg_const_nolen    SvPVbyte    SvPVX_const    SvPVX_mutable    SvREFCNT_inc    SvREFCNT_inc_NN    SvREFCNT_inc_simple    SvREFCNT_inc_simple_NN    SvREFCNT_inc_simple_void    SvREFCNT_inc_simple_void_NN    SvREFCNT_inc_void    SvREFCNT_inc_void_NN    SvRV_set    SvSHARED_HASH    SvSTASH_set    SvUOK    SvUV    SvUV_nomg    SvUV_set    SvUVX    SvUVx    SvUVXx    SvVSTRING_mg    UNDERBAR    UTF8_MAXBYTES    UVof    UVSIZE    UVTYPE    UVuf    UVXf    UVxf    vload_module    vnewSVpvf    WARN_ALL    WARN_AMBIGUOUS    WARN_ASSERTIONS    WARN_BAREWORD    WARN_CLOSED    WARN_CLOSURE    WARN_DEBUGGING    WARN_DEPRECATED    WARN_DIGIT    WARN_EXEC    WARN_EXITING    WARN_GLOB    WARN_INPLACE    WARN_INTERNAL    WARN_IO    WARN_LAYER    WARN_MALLOC    WARN_MISC    WARN_NEWLINE    WARN_NUMERIC    WARN_ONCE    WARN_OVERFLOW    WARN_PACK    WARN_PARENTHESIS    WARN_PIPE    WARN_PORTABLE    WARN_PRECEDENCE    WARN_PRINTF    WARN_PROTOTYPE    WARN_QW    WARN_RECURSION    WARN_REDEFINE    WARN_REGEXP    WARN_RESERVED    WARN_SEMICOLON    WARN_SEVERE    WARN_SIGNAL    WARN_SUBSTR    WARN_SYNTAX    WARN_TAINT    WARN_THREADS    WARN_UNINITIALIZED    WARN_UNOPENED    WARN_UNPACK    WARN_UNTIE    WARN_UTF8    WARN_VOID    warner    XCPT_CATCH    XCPT_RETHROW    XCPT_TRY_END    XCPT_TRY_START    XPUSHmortal    XPUSHu    XSprePUSH    XSRETURN    XSRETURN_UV    XST_mUV    ZeroD=head2 Perl API not supported by ppport.hThere is still a big part of the API not supported by F<ppport.h>.Either because it doesn't make sense to back-port that part of the API,or simply because it hasn't been implemented yet. Patches welcome!Here's a list of the currently unsupported API, and also the version ofPerl below which it is unsupported:=over 4=item perl 5.9.5  MULTICALL  POP_MULTICALL  PUSH_MULTICALL  Perl_signbit  SvRX  SvRXOK  av_create_and_push  av_create_and_unshift_one  get_cvn_flags  gv_fetchfile_flags  hv_assert  mro_get_linear_isa  mro_get_linear_isa_c3  mro_get_linear_isa_dfs  mro_method_changed_in  my_dirfd  newSV_type  pad_sv  pregcomp  ptr_table_clear  ptr_table_fetch  ptr_table_free  ptr_table_new  ptr_table_split  ptr_table_store  re_compile  re_intuit_start  reg_named_buff_all  reg_named_buff_exists  reg_named_buff_fetch  reg_named_buff_firstkey  reg_named_buff_nextkey  reg_named_buff_scalar  reg_stringify  regfree_internal  savesharedpvn  scan_vstring  stashpv_hvname_match  upg_version=item perl 5.9.4  PerlIO_context_layers  gv_name_set  my_vsnprintf  newXS_flags  pv_escape  pv_pretty  regclass_swash  sv_does  sv_usepvn_flags=item perl 5.9.3  av_arylen_p  ckwarn  ckwarn_d  csighandler  dMULTICALL  doref  gv_const_sv  gv_stashpvs  hv_eiter_p  hv_eiter_set  hv_name_set  hv_placeholders_get  hv_placeholders_p  hv_placeholders_set  hv_riter_p  hv_riter_set  is_utf8_string_loclen  my_sprintf  newGIVENOP  newSVhek  newSVpvs_share  newWHENOP  newWHILEOP  ref  savepvs  sortsv_flags  vverify=item perl 5.9.2  SvPVbyte_force  find_rundefsvoffset  gv_fetchpvn_flags  gv_fetchsv  op_refcnt_lock  op_refcnt_unlock  savesvpv  vnormal=item perl 5.9.1  hv_clear_placeholders  hv_scalar  scan_version  sv_2iv_flags  sv_2uv_flags=item perl 5.9.0  new_version  save_set_svflags  vcmp  vnumify  vstringify=item perl 5.8.3  SvIsCOW  SvIsCOW_shared_hash=item perl 5.8.1  SvVOK  doing_taint

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -