📄 ppport.pm
字号:
find_runcv is_utf8_string_loc packlist save_bool savestack_grow_cnt seed sv_cat_decode sv_compile_2op sv_setpviv sv_setpviv_mg unpackstring=item perl 5.8.0 hv_iternext_flags hv_store_flags is_utf8_idcont nothreadhook=item perl 5.7.3 PerlIO_clearerr PerlIO_close PerlIO_eof PerlIO_error PerlIO_fileno PerlIO_fill PerlIO_flush PerlIO_get_base PerlIO_get_bufsiz PerlIO_get_cnt PerlIO_get_ptr PerlIO_read PerlIO_seek PerlIO_set_cnt PerlIO_set_ptrcnt PerlIO_setlinebuf PerlIO_stderr PerlIO_stdin PerlIO_stdout PerlIO_tell PerlIO_unread PerlIO_write SvLOCK SvSHARE SvUNLOCK atfork_lock atfork_unlock custom_op_desc custom_op_name deb debstack debstackptrs gv_fetchmeth_autoload ibcmp_utf8 my_fork my_socketpair pack_cat perl_destruct pv_uni_display save_shared_pvref savesharedpv sortsv sv_copypv sv_magicext sv_nolocking sv_nosharing sv_recode_to_utf8 sv_uni_display to_uni_fold to_uni_lower to_uni_title to_uni_upper to_utf8_case to_utf8_fold to_utf8_lower to_utf8_title to_utf8_upper unpack_str uvchr_to_utf8_flags uvuni_to_utf8_flags vdeb=item perl 5.7.2 calloc getcwd_sv init_tm malloc mfree mini_mktime my_atof2 my_strftime op_null realloc sv_catpvn_flags sv_catsv_flags sv_setsv_flags sv_utf8_upgrade_flags swash_fetch=item perl 5.7.1 POPpbytex bytes_from_utf8 despatch_signals do_openn gv_handler is_lvalue_sub my_popen_list save_mortalizesv save_padsv scan_num sv_force_normal_flags sv_setref_uv sv_unref_flags sv_utf8_upgrade utf8_length utf8_to_uvchr utf8_to_uvuni utf8n_to_uvuni uvuni_to_utf8=item perl 5.6.1 SvGAMAGIC apply_attrs_string bytes_to_utf8 gv_efullname4 gv_fullname4 is_utf8_string save_generic_pvref utf16_to_utf8 utf16_to_utf8_reversed utf8_to_bytes=item perl 5.6.0 SvIOK_UV SvIOK_notUV SvIOK_only_UV SvPOK_only_UTF8 SvPVbyte_nolen SvPVbytex SvPVbytex_force SvPVutf8 SvPVutf8_force SvPVutf8_nolen SvPVutf8x SvPVutf8x_force SvUOK SvUTF8 SvUTF8_off SvUTF8_on av_delete av_exists call_atexit cast_i32 cast_iv cast_ulong cast_uv do_gv_dump do_gvgv_dump do_hv_dump do_magic_dump do_op_dump do_open9 do_pmop_dump do_sv_dump dump_all dump_eval dump_form dump_indent dump_packsubs dump_sub dump_vindent get_context get_ppaddr gv_dump init_i18nl10n init_i18nl14n is_uni_alnum is_uni_alnum_lc is_uni_alnumc is_uni_alnumc_lc is_uni_alpha is_uni_alpha_lc is_uni_ascii is_uni_ascii_lc is_uni_cntrl is_uni_cntrl_lc is_uni_digit is_uni_digit_lc is_uni_graph is_uni_graph_lc is_uni_idfirst is_uni_idfirst_lc is_uni_lower is_uni_lower_lc is_uni_print is_uni_print_lc is_uni_punct is_uni_punct_lc is_uni_space is_uni_space_lc is_uni_upper is_uni_upper_lc is_uni_xdigit is_uni_xdigit_lc is_utf8_alnum is_utf8_alnumc is_utf8_alpha is_utf8_ascii is_utf8_char is_utf8_cntrl is_utf8_digit is_utf8_graph is_utf8_idfirst is_utf8_lower is_utf8_mark is_utf8_print is_utf8_punct is_utf8_space is_utf8_upper is_utf8_xdigit magic_dump mess my_atof my_fflush_all newANONATTRSUB newATTRSUB newXS newXSproto new_collate new_ctype new_numeric op_dump perl_parse pmop_dump pv_display re_intuit_string reginitcolors require_pv safesyscalloc safesysfree safesysmalloc safesysrealloc save_I8 save_alloc save_destructor save_destructor_x save_re_context save_vptr scan_bin set_context set_numeric_local set_numeric_radix set_numeric_standard str_to_version sv_2pvutf8 sv_2pvutf8_nolen sv_force_normal sv_len_utf8 sv_pos_b2u sv_pos_u2b sv_pv sv_pvbyte sv_pvbyten sv_pvbyten_force sv_pvutf8 sv_pvutf8n sv_pvutf8n_force sv_rvweaken sv_utf8_decode sv_utf8_downgrade sv_utf8_encode swash_init tmps_grow to_uni_lower_lc to_uni_title_lc to_uni_upper_lc utf8_distance utf8_hop vcroak vform vmess vwarn vwarner=item perl 5.005_03 POPpx get_vtbl save_generic_svref=item perl 5.005 PL_modglobal cx_dump debop debprofdump fbm_compile fbm_instr get_op_descs get_op_names init_stacks mg_length mg_size newHVhv new_stackinfo regdump regexec_flags regnext runops_debug runops_standard save_hints save_iv screaminstr sv_iv sv_nv sv_peek sv_true=item perl 5.004_05 do_binmode save_aelem save_helem=item perl 5.004 GIMME_V G_VOID HEf_SVKEY HeHASH HeKEY HeKLEN HePV HeSVKEY HeSVKEY_force HeSVKEY_set HeVAL SvSetMagicSV SvSetMagicSV_nosteal SvSetSV_nosteal SvTAINTED SvTAINTED_off SvTAINTED_on block_gimme call_list cv_const_sv delimcpy do_open form gv_autoload4 gv_efullname3 gv_fetchmethod_autoload gv_fullname3 hv_delayfree_ent hv_delete_ent hv_exists_ent hv_fetch_ent hv_free_ent hv_iterkeysv hv_ksplit hv_store_ent ibcmp_locale my_failure_exit my_memcmp my_pclose my_popen newSVpvf rsignal rsignal_state save_I16 save_gp share_hek start_subparse sv_catpvf sv_catpvf_mg sv_cmp_locale sv_derived_from sv_gets sv_magic_portable sv_setpvf sv_setpvf_mg sv_taint sv_tainted sv_untaint sv_vcatpvf sv_vcatpvf_mg sv_vcatpvfn sv_vsetpvf sv_vsetpvf_mg sv_vsetpvfn unsharepvn vnewSVpvf warner=back=head1 BUGSIf you find any bugs, C<Devel::PPPort> doesn't seem to build on yoursystem or any of its tests fail, please use the CPAN Request Trackerat L<http://rt.cpan.org/> to create a ticket for the module.=head1 AUTHORS=over 2=item *Version 1.x of Devel::PPPort was written by Kenneth Albanowski.=item *Version 2.x was ported to the Perl core by Paul Marquess.=item *Version 3.x was ported back to CPAN by Marcus Holland-Moritz.=back=head1 COPYRIGHTVersion 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/ormodify it under the same terms as Perl itself.=head1 SEE ALSOSee L<h2xs>, L<ppport.h>.=cutpackage Devel::PPPort;use strict;use vars qw($VERSION $data);$VERSION = do { my @r = '$Snapshot: /Devel-PPPort/3.13 $' =~ /(\d+\.\d+(?:_\d+)?)/; @r ? $r[0] : '9.99' };sub _init_data{ $data = do { local $/; <DATA> }; my $pkg = 'Devel::PPPort'; $data =~ s/__PERL_VERSION__/$]/g; $data =~ s/__VERSION__/$VERSION/g; $data =~ s/__PKG__/$pkg/g; $data =~ s/^\|>//gm;}sub WriteFile{ my $file = shift || 'ppport.h'; defined $data or _init_data(); my $copy = $data; $copy =~ s/\bppport\.h\b/$file/g; open F, ">$file" or return undef; print F $copy; close F; return 1;}1;__DATA__#if 0<<'SKIP';#endif/*---------------------------------------------------------------------- ppport.h -- Perl/Pollution/Portability Version __VERSION__ Automatically created by __PKG__ running under perl __PERL_VERSION__. Do NOT edit this file directly! -- Edit PPPort_pm.PL and the includes in parts/inc/ instead. Use 'perldoc ppport.h' to view the documentation below.----------------------------------------------------------------------SKIP|>=pod|>|>=head1 NAME|>|>ppport.h - Perl/Pollution/Portability version __VERSION__|>|>=head1 SYNOPSIS|>|> perl ppport.h [options] [source files]|>|> Searches current directory for files if no [source files] are given|>|> --help show short help|>|> --version show version|>|> --patch=file write one patch file with changes|> --copy=suffix write changed copies with suffix|> --diff=program use diff program and options|>|> --compat-version=version provide compatibility with Perl version|> --cplusplus accept C++ comments|>|> --quiet don't output anything except fatal errors|> --nodiag don't show diagnostics|> --nohints don't show hints|> --nochanges don't suggest changes|> --nofilter don't filter input files|>|> --strip strip all script and doc functionality from|> ppport.h|>|> --list-provided list provided API|> --list-unsupported list unsupported API|> --api-info=name show Perl API portability information|>|>=head1 COMPATIBILITY|>|>This version of F<ppport.h> is designed to support operation with Perl|>installations back to 5.003, and has been tested up to 5.10.0.|>|>=head1 OPTIONS|>|>=head2 --help|>|>Display a brief usage summary.|>|>=head2 --version|>|>Display the version of F<ppport.h>.|>|>=head2 --patch=I<file>|>|>If this option is given, a single patch file will be created if|>any changes are suggested. This requires a working diff program|>to be installed on your system.|>|>=head2 --copy=I<suffix>|>|>If this option is given, a copy of each file will be saved with|>the given suffix that contains the suggested changes. This does|>not require any external programs. Note that this does not|>automagially add a dot between the original filename and the|>suffix. If you want the dot, you have to include it in the option|>argument.|>|>If neither C<--patch> or C<--copy> are given, the default is to|>simply print the diffs for each file. This requires either|>C<Text::Diff> or a C<diff> program to be installed.|>|>=head2 --diff=I<program>|>|>Manually set the diff program and options to use. The default|>is to use C<Text::Diff>, when installed, and output unified|>context diffs.|>|>=head2 --compat-version=I<version>|>|>Tell F<ppport.h> to check for compatibility with the given|>Perl version. The default is to check for compatibility with Perl|>version 5.003. You can use this option to reduce the output|>of F<ppport.h> if you intend to be backward compatible only|>down to a certain Perl version.|>|>=head2 --cplusplus|>|>Usually, F<ppport.h> will detect C++ style comments and|>replace them with C style comments for portability reasons.|>Using this option instructs F<ppport.h> to leave C++|>comments untouched.|>|>=head2 --quiet|>|>Be quiet. Don't print anything except fatal errors.|>|>=head2 --nodiag|>|>Don't output any diagnostic messages. Only portability|>alerts will be printed.|>|>=head2 --nohints|>|>Don't output any hints. Hints often contain useful portability|>notes. Warnings will still be displayed.|>|>=head2 --nochanges|>|>Don't suggest any changes. Only give diagnostic output and hints|>unless these are also deactivated.|>|>=head2 --nofilter|>|>Don't filter the list of input files. By default, files not looking|>like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped.|>|>=head2 --strip|>|>Strip all script and documentation functionality from F<ppport.h>.|>This reduces the size of F<ppport.h> dramatically and may be useful|>if you want to include F<ppport.h> in smaller modules without|>increasing their distribution size too much.|>|>The stripped F<ppport.h> will have a C<--unstrip> option that allows|>you to undo the stripping, but only if an appropriate C<Devel::PPPort>|>module is installed.|>|>=head2 --list-provided|>|>Lists the API elements for which compatibility is provided by|>F<ppport.h>. Also lists if it must be explicitly requested,|>if it has dependencies, and if there are hints or warnings for it.|>|>=head2 --list-unsupported|>|>Lists the API elements that are known not to be supported by|>F<ppport.h> and below which version of Perl they probably|>won't be available or work.|>|>=head2 --api-info=I<name>|>|>Show portability information for API elements matching I<name>.|>If I<name> is surrounded by slashes, it is interpreted as a regular|>expression.|>|>=head1 DESCRIPTION|>|>In order for a Perl extension (XS) module to be as portable as possible|>across differing versions of Perl itself, certain steps need to be taken.|>|>=over 4|>|>=item *
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -