in reply to Understanding a OOP Code: Package declared within a Package
Hello sachinz2,
From perlmod#Packages:
Packages may themselves contain package separators, as in $OUTER::INNER::var. This implies nothing about the order of name lookups, however. There are no relative packages: all symbols are either local to the current package, or must be fully qualified from the outer package name down. For instance, there is nowhere within package OUTER that $INNER::var refers to $OUTER::INNER::var. INNER refers to a totally separate global package.
So, although package declarations can be nested using braces, they’re still independent of each other. That is, a pair of declarations like this:
package A { ... package B { ... } }
is really no different to this:
package A; ... package B; ...
(Note that the A::B syntax is used to specify where Perl looks for the package: in this case, it will look for package B in a subdirectory A of one of the directories specified in @INC. But from an OO point of view, packages A and B are unrelated.)
Hope that helps,
Athanasius <°(((>< contra mundum | Iustus alius egestas vitae, eros Piratica, |
|
---|