Perl Cd Bookshelf [Electronic resources] نسخه متنی

اینجــــا یک کتابخانه دیجیتالی است

با بیش از 100000 منبع الکترونیکی رایگان به زبان فارسی ، عربی و انگلیسی

Perl Cd Bookshelf [Electronic resources] - نسخه متنی

| نمايش فراداده ، افزودن یک نقد و بررسی
افزودن به کتابخانه شخصی
ارسال به دوستان
جستجو در متن کتاب
بیشتر
تنظیمات قلم

فونت

اندازه قلم

+ - پیش فرض

حالت نمایش

روز نیمروز شب
جستجو در لغت نامه
بیشتر
لیست موضوعات
توضیحات
افزودن یادداشت جدید

8.42. Class::ISA


Allows you to scan
@ISA—in order and without
duplicates—for names of classes that Perl would scan to find a
method. This is important when using classes that are derived from
other classes, which are themselves derived from other classes, and
so forth. Class::ISA is bundled with the Perl 5.8 source kit.

Let''s say that you called
SomeClass->method(). Perl searches for
method() first in SomeClass, but will search its
superclasses for method() if it
doesn''t find it in SomeClass. For example:

@SomeClass::ISA = qw(SomeOther SomeOtherOther SomeOtherOtherOther);
use Class::ISA;
print "SomeClass::ISA path is:\n ",
join(", ", Class::ISA::super_path(`SomeClass'')), "\n";

This prints:

SomeOther, SomeOtherOther, SomeOtherOtherOther

Class::ISA doesn''t export anything. If classes
erroneously inherit from each other; i.e., if
there''s a loop (or cycle) between
what''s inherited between classes, Perl throws an
error, and Class::ISA itself will ignore the loop. If Perl
can''t find the method in the @ISA
tree, it looks in UNIVERSAL, but Class::ISA does not. You may do
something like the following to search in UNIVERSAL as well:

@supers = (Class::Tree::super_path($CLASS), `UNIVERSAL'');

Here are the Class::ISA methods.


Class::ISA::self_and_super_path($CLASS)

Identical to super_path, except that
$CLASS is included as the first element.


Class::ISA::self_and_super_versions($CLASS)

Returns a hash with keys that are $CLASS (and its
superclasses) and values that are the contents of the
$VERSION of each class. If
$VERSION does not exist,
sel_and_super_versions returns
undef.


Class::ISA::super_path(class)

Returns an ordered list of names of classes that Perl would search
through to find a method. Note that no duplicates will be allowed in
the list; nor will class be included in
the list. UNIVERSAL is not included in the list, but if you need it,
you should add it to the end of the list.

/ 875