內容

名稱

TAP::Object - 提供所有 TAP::* 模組共用功能的基本類別

版本

版本 3.44

語法

package TAP::Whatever;

use strict;

use base 'TAP::Object';

# new() implementation by TAP::Object
sub _initialize {
    my ( $self, @args) = @_;
    # initialize your object
    return $self;
}

# ... later ...
my $obj = TAP::Whatever->new(@args);

說明

TAP::Object 為所有 TAP::* 類別提供預設建構函式和例外狀況模型。例外狀況會使用 Carp 提出。

方法

類別方法

new

建立新物件。傳遞給 new 的任何引數都會傳遞給 "_initialize" 方法。傳回新物件。

實例方法

_initialize

初始化新物件。這個方法預設為 stub,您應該視需要覆寫它。

注意: "new" 預期您傳回 $self 或引發例外。請參閱 "_croak"Carp

_croak

使用 Carp 中的 croak 引發例外,例如

$self->_croak( 'why me?', 'aaarrgh!' );

也可以作為類別方法呼叫。

$class->_croak( 'this works too' );

_confess

使用 Carp 中的 confess 引發例外,例如

$self->_confess( 'why me?', 'aaarrgh!' );

也可以作為類別方法呼叫。

$class->_confess( 'this works too' );

_construct

建立指定類別的新執行個體。

mk_methods

建立簡單的 getter/setter。

__PACKAGE__->mk_methods(@method_names);