NAME

Promises::Promise - An implementation of Promises in Perl

VERSION

version 1.04

DESCRIPTION

Promise objects are typically not created by hand, they are typically returned from the promise method of a Promises::Deferred instance. It is best to think of a Promises::Promise instance as a handle for Promises::Deferred instances.

Most of the documentation here points back to the documentation in the Promises::Deferred module.

Additionally Promises::Cookbook::GentleIntro contains a long explanation of how this module, and all its components are meant to work together.

METHODS

new( $deferred )

The constructor only takes one parameter and that is an instance of Promises::Deferred that you want this object to proxy.

then( $callback, $error )

This calls then on the proxied Promises::Deferred instance.

chain( @thens )

This calls chain on the proxied Promises::Deferred instance.

catch( $error )

This calls catch on the proxied Promises::Deferred instance.

done( $callback, $error )

This calls done on the proxied Promises::Deferred instance.

finally( $callback )

This calls finally on the proxied Promises::Deferred instance.

timeout( $seconds )

This calls timeout on the proxied Promises::Deferred instance.

status

This calls status on the proxied Promises::Deferred instance.

result

This calls result on the proxied Promises::Deferred instance.

is_unfulfilled

This calls is_unfulfilled on the proxied Promises::Deferred instance.

is_fulfilled

This calls is_fulfilled on the proxied Promises::Deferred instance.

is_failed

This calls is_failed on the proxied Promises::Deferred instance.

is_in_progress

This calls is_in_progress on the proxied Promises::Deferred instance.

is_resolved

This calls is_resolved on the proxied Promises::Deferred instance.

is_rejected

This calls is_rejected on the proxied Promises::Deferred instance.

is_done

This calls is_done on the proxied Promises::Deferred instance.

AUTHOR

Stevan Little <stevan.little@iinteractive.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020, 2019, 2017, 2014, 2012 by Infinity Interactive, Inc.

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