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

📄 overload_threads.t

📁 source of perl for linux application,
💻 T
字号:
#!perl -wBEGIN {    if( $ENV{PERL_CORE} ) {        chdir 't';        @INC = ('../lib', 'lib');    }    else {        unshift @INC, 't/lib';    }}chdir 't';BEGIN {    # There was a bug with overloaded objects and threads.    # See rt.cpan.org 4218    eval { require threads; 'threads'->import; 1; };}use Test::More;BEGIN {    if( !eval "require overload" ) {        plan skip_all => "needs overload.pm";    }    else {        plan tests => 5;    }}package Overloaded;use overload  q{""} => sub { $_[0]->{string} };sub new {    my $class = shift;    bless { string => shift }, $class;}package main;my $warnings = '';local $SIG{__WARN__} = sub { $warnings = join '', @_ };# overloaded object as namemy $obj = Overloaded->new('foo');ok( 1, $obj );# overloaded object which returns undef as namemy $undef = Overloaded->new(undef);pass( $undef );is( $warnings, '' );TODO: {    my $obj = Overloaded->new('not really todo, testing overloaded reason');    local $TODO = $obj;    fail("Just checking todo as an overloaded value");}SKIP: {    my $obj = Overloaded->new('not really skipped, testing overloaded reason');    skip $obj, 1;}

⌨️ 快捷键说明

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