The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Data::Object::Undef - Undef Object for Perl 5

VERSION

version 0.61

SYNOPSIS

  use Data::Object::Undef;

  my $undef = Data::Object::Undef->new(undef);

DESCRIPTION

Data::Object::Undef provides routines for operating on Perl 5 undefined data. Undef methods work on undefined values.

METHODS

data

  # given $undef

  $undef->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 undef

  $undef->defined ? 'Yes' : 'No'; # No

The defined method always returns false. This method returns a Data::Object::Number object.

detract

  # given $undef

  $undef->detract; # original value

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

dump

  # given $undef

  $undef->dump; # 'undef'

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

eq

  # given $undef

  $undef->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 $undef

  $undef->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 $undef

  $undef->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 $undef

  $undef->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 $undef

  $undef->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 $undef

  $undef->methods;

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

ne

  # given $undef

  $undef->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 undef

  my $undef = Data::Object::Undef->new(undef);

The new method expects an undefined value and returns a new class instance.

print

  # given $undef

  $undef->print; # 'undef'

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 $undef

  $undef->roles;

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

say

  # given $undef

  $undef->say; # 'undef\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 $undef

  $undef->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 $undef

  $undef->type; # UNDEF

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

COMPOSITION

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

ROLES

This package is comprised of the following roles.

SEE ALSO

AUTHOR

Al Newkirk <al@iamalnewkirk.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2018 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.