=for comment made from [Class-Fields-0.16] [lib/base.pod] =head1 NAME base - Establish IS-A relationship with base class at compile time J<< ja;base - 基底クラスとの IS-A 関係をコンパイル時に確立する >> =head1 SYNOPSIS package Baz; use base qw(Foo Bar); =head1 DESCRIPTION Roughly similar in effect to J<< ja; おおざっぱに言うと, 次の文と同じ効果を持ちます. >> BEGIN { require Foo; require Bar; push @ISA, qw(Foo Bar); } Will also initialize the %FIELDS hash if one of the base classes has it using all public and protected data members of the base classes. Multiple Inheritence of fields is B supported. If two or more base classes each have inheritable fields the 'base' pragma will croak. See L, L and L for a description of this feature. J<< ja; 基底クラスにそのクラスのすべての public 及び private データメンバを 使う %FIELDS ハッシュを持っている者があるのなら, このクラスでも %FIELDS を初期化します. >> Due to the limitations of the pseudo-hash implementation, you must use base B you declare any of your own fields. J<< ja; 仮想ハッシュの実装における制限から, フィールドを宣言するよりもB<前に> base プラグマを使わなければなりません. >> When strict 'vars' is in scope, I also lets you assign to @ISA without having to declare @ISA with the 'vars' pragma first. J<< ja; スコープ内に strict 'vars' がある時は, I は 'vars' プラグマで @ISA を宣言しないで @ISA を扱える様になります. >> If any of the base classes are not loaded yet, I silently Cs them (but it won't call the C method). Whether to C a base class package is determined by the absence of a global $VERSION in the base package. If $VERSION is not detected even after loading it, I will define $VERSION in the base package, setting it to the string C<-1, set by base.pm>. J<< ja; もし基底クラスがまだロードされていなかったのなら, I は こっそりそれを C します(しかし C メソッドは呼び出しま せん). 基底クラスパッケージを C するかどうかの決定は そのパッケージの $VERSION グローバル変数が存在するかどうかで判断されます. ロード後でも $VERSION が検出されなかったのなら, I は 文字列 C<-1, set by base.pm> をそこに設定します. >> =head1 HISTORY This module was introduced with Perl 5.004_04. J<< ja; このモジュールは Perl 5.004_04 で採用されました. >> =head1 NOTE This is the base.pm which was installed as part of the Class::Fields package. B the base.pm which is distributed with Perl. This version should safely emulate everything that 5.6.0's base.pm does. It passes all of 5.6.0's regression tests. J<< ja; これは Class::Fields パッケージの一部としてインストールされる base.pm です. Perl に同梱されている base.pm ではB<ありません>. この base.pm は 5.6.0 の base.pm が行っていること全てを安全に エミュレートするべきです. また, 5.6.0 の全てのリグレッションテストを 通過します. >> It should also work under 5.005_03, although if you're going to be screwing around with pseudohashes you really should upgrade to 5.6.0. J<< ja; これは 5.005_03 でも機能します. しかし仮想ハッシュを要求するのなら 5.6.0 にアップグレードするべきです. >> =head1 SEE ALSO L, L, L, L, L J<< ja; L, L, L, L, L >>