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

📄 xs.pm

📁 source of perl for linux application,
💻 PM
字号:
package MakeMaker::Test::Setup::XS;@ISA = qw(Exporter);require Exporter;@EXPORT = qw(setup_xs teardown_xs);use strict;use File::Path;use File::Basename;use MakeMaker::Test::Utils;my $Is_VMS = $^O eq 'VMS';my %Files = (             'XS-Test/lib/XS/Test.pm'     => <<'END',package XS::Test;require Exporter;require DynaLoader;$VERSION = 1.01;@ISA    = qw(Exporter DynaLoader);@EXPORT = qw(is_even);bootstrap XS::Test $VERSION;1;END             'XS-Test/Makefile.PL'          => <<'END',use ExtUtils::MakeMaker;WriteMakefile(    NAME          => 'XS::Test',    VERSION_FROM  => 'lib/XS/Test.pm',);END             'XS-Test/Test.xs'              => <<'END',#include "EXTERN.h"#include "perl.h"#include "XSUB.h"MODULE = XS::Test       PACKAGE = XS::TestPROTOTYPES: DISABLEintis_even(input)       int     input   CODE:       RETVAL = (input % 2 == 0);   OUTPUT:       RETVAL        END             'XS-Test/t/is_even.t'          => <<'END',#!/usr/bin/perl -wuse Test::More tests => 3;use_ok "XS::Test";ok !is_even(1);ok is_even(2);END            );sub setup_xs {    setup_mm_test_root();    chdir 'MM_TEST_ROOT:[t]' if $Is_VMS;    while(my($file, $text) = each %Files) {        # Convert to a relative, native file path.        $file = File::Spec->catfile(File::Spec->curdir, split m{\/}, $file);        my $dir = dirname($file);        mkpath $dir;        open(FILE, ">$file") || die "Can't create $file: $!";        print FILE $text;        close FILE;    }    return 1;}sub teardown_xs {     foreach my $file (keys %Files) {        my $dir = dirname($file);        if( -e $dir ) {            rmtree($dir) || return;        }    }    return 1;}1;

⌨️ 快捷键说明

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