EzObject Version 1.1 リファレンス
REFERENCE
CEzObject.pm
概要
EZ-NET 区分 | Base2 Collection |
---|---|
依存モジュール | - |
オブジェクト指向を容易に実装するための基底クラスです。属性まわりを実装するためのメソッドを提供します。
基本情報
Date | 2004/06/09 |
---|---|
File Name | CEzObject.pm |
Version | 1.1.1 |
Type | Class |
実装
コンストラクタ
$own = new()
$own | 自分自身への参照が返されます。 |
---|
属性を保存する領域を確保します。
DESTROY()
- | - |
---|
設定された属性を全て削除します。
メソッド
DeleteAttributes()
- | - |
---|
設定されている属性をすべて消去します。内部的には、すべての属性にたいして undef を行います。
AddImplement($name, $value = undef)
$name | 追加する実装の名前です。 |
---|---|
$value | 追加する実装への参照を指定します。 |
自分自身に対して、新たに変数の実装を行います。設定する値は参照のかたちで指定します。
AddAttribute($name, $value = undef)
$name | 追加する属性の名前です。 |
---|---|
$value | 追加する属性に設定する値です。 |
自分自身に対して、新たに属性を結び付けます。$value によって、初期値を設定することが可能です。 現在このメソッドは、SetAttribute() メソッドと同等です。意味合い的には属性を定義するときにはこちらを使用します。
SetAttribute($name, $value = undef)
$name | 操作対象となる属性の名前です。 |
---|---|
$value | 属性に設定する値です。 |
$value によって指定された値を、属性に代入します。 既に実装済みの属性を操作する場合に使用します。
$value = GetAttribute($name)
$value | 指定された属性に保存されている値を取得します。 |
---|---|
$name | 取得したい属性の名前を指定します。 |
属性に保存されている値を取得します。
$version = GetVersionInfo()
$version | モジュールのバージョン情報を取得します。 |
---|
モジュールのバージョン情報を取得します。たとえば "1.1.1" というような文字列が取得できます。
$info = GetClassInfo()
$info | モジュールの情報を取得します。 |
---|
モジュールの情報を取得します。たとえば "Easy Network Base Object" というような文字列が取得できます。
$size = SetObjectInformation($version, $classinfo)
$size | 記録されている情報数を返します。 |
---|---|
$version | 設定する情報のうちの、バージョン情報です。 |
$classinfo | 設定する情報のうちの、クラス情報です。 |
オブジェクト情報を設定(追加)します。通常、このメソッドは派生クラスのコンストラクタだけが呼び出します。
$info = GetObjectInformations()
$info | モジュールの情報を取得します。 |
---|
モジュールの情報をすべて取得します。取得されるデータは配列への参照として取得でき、さらにその配列にはバージョン情報が HASH への参照で格納されています。それぞれの情報は 'VersionInfo' キーと 'ClassInfo' キーに、該当する情報を持っています。
プロパティ
イベント
関数
属性
$VersionInfo | クラスのバージョン情報が保存されています。 |
---|---|
$ClassInfo | クラス情報が保存されています。 |
実験スクリプト
動作実験などで使用するスクリプトの一部です。ただ一応載せているだけなのですけど、もしかすると使い勝手の雰囲気は汲み取れるかもしれません。
package check;
use strict 'vars';
use CEzObject;
@check::ISA = ('CEzObject');
our %SYS_INFO =
(
'VersionInfo' => '1.0.0',
'ClassInfo' => 'Test Object'
);
sub new()
{
my $that = shift;
my $this = new CEzObject();
$this->SetObjectInformation($SYS_INFO{'VersionInfo'}, $SYS_INFO{'ClassInfo'});
$this->AddAttribute('attr1');
$this->AddAttribute('attr2', 200);
$this->AddAttribute('attr3', 300);
bless $this, $that;
return $this;
}
sub DESTROY()
{
my $this = shift;
$this->CEzObject::DESTROY();
}
1;