The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Data::Object::Universal - Universal Object for Perl 5

VERSION

version 0.59

SYNOPSIS

    use Data::Object::Universal;

    my $object = Data::Object::Universal->new($scalar);

DESCRIPTION

Data::Object::Universal provides routines for operating on any Perl 5 data type.

COMPOSITION

This package inherits all functionality from the Data::Object::Role::Universal role and implements proxy methods as documented herewith.

METHODS

data

    # given $object

    $object->data; # original value

The data method returns the original and underlying value contained by the object. This method is an alias to the detract method.

defined

    # given $object

    $object->defined; # 1

The defined method returns true if the object represents a value that meets the criteria for being defined, otherwise it returns false. This method returns a Data::Object::Number object.

detract

    # given $object

    $object->detract; # original value

The detract method returns the original and underlying value contained by the object.

dump

    # given 0

    $object->dump; # 0

The dump method returns returns a string representation of the object. This method returns a Data::Object::String object.

eq

    # given $object

    $object->eq; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

ge

    # given $object

    $object->ge; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

gt

    # given $object

    $object->gt; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

le

    # given $object

    $object->le; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

lt

    # given $object

    $object->lt; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

methods

    # given $object

    $object->methods;

The methods method returns the list of methods attached to object. This method returns a Data::Object::Array object.

ne

    # given $object

    $object->ne; # exception thrown

This method is a consumer requirement but has no function and is not implemented. This method will throw an exception if called.

new

    # given $scalar

    my $object = Data::Object::Universal->new($scalar);

The new method expects a scalar reference and returns a new class instance.

print

    # given 0

    $object->print; # 0

The print method outputs the value represented by the object to STDOUT and returns true. This method returns a Data::Object::Number object.

roles

    # given $object

    $object->roles;

The roles method returns the list of roles attached to object. This method returns a Data::Object::Array object.

say

    # given 0

    $object->say; # '0\n'

The say method outputs the value represented by the object appended with a newline to STDOUT and returns true. This method returns a Data::Object::Number object.

throw

    # given $object

    $object->throw;

The throw method terminates the program using the core die keyword, passing the object to the Data::Object::Exception class as the named parameter object. If captured this method returns a Data::Object::Exception object.

type

    # given $object

    $object->type; # UNIVERSAL

The type method returns a string representing the internal data type object name. This method returns a Data::Object::String object.

ROLES

This package is comprised of the following roles.

SEE ALSO

AUTHOR

Al Newkirk <anewkirk@ana.io>

COPYRIGHT AND LICENSE

This software is copyright (c) 2014 by Al Newkirk.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.