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

Changes for version 0.097

  • Change: fc8b82a46d8ed471a98bb483e6855cf870bdcd97 Author: Rocco Caputo <rcaputo@cpan.org> Date : 2012-03-15 21:21:26 +0000
    • Bump the version for release. I shouldn't need to do this.
  • Change: f1cda55d18b80f20eb2e1d5c74e22e16655e2ed7 Author: Rocco Caputo <rcaputo@cpan.org> Date : 2012-03-09 12:27:22 +0000
    • Fix a warning due to strange destruction order.
    • Object destruction can be deferred until after POE::Kernel stops, through nasties like circular references. Diagnostic messages are thrown when they try to unregister their handles too late. Detect that POE::Kernel has stopped, and avoid the moot unregistering.
    • I'm not sure I like this. It feels sloppy. Like it's supporting applications that insist on leaking memory, or something.
  • Change: 1a177092921c125b21696c6d0d5e3017583c8d45 Author: Rocco Caputo <rcaputo@cpan.org> Date : 2012-03-09 12:25:57 +0000
    • Allow Reflex::Filehandle to be used with handle instead of descriptor.
    • Sometimes you're working with a file handle, and sometimes all you have is a descriptor. Fix a bug in the code to support either.
  • Change: 34b639506f2904cd13200b5041cd1cea26b9c9b1 Author: Rocco Caputo <rcaputo@cpan.org> Date : 2012-03-08 16:50:07 +0000
    • Pass att_active through from RR::Streaming to RR::Writable.
    • Jason May provided a test case proving that att_active wasn't being passed through to Reflex::Role::Writable. This fixes the issue he reported on irc.perl.org #reflex.

Documentation

What is Reflex, and how do I use it?

Modules

Class library for flexible, reactive programs.
a non-blocking server (client socket acceptor)
Base class for reactive (aka, event driven) objects.
Generic callback adapters to simplify calling back
Callback adapter for plain code references
Callback adapter for class and object methods
Non-callback, inline Promise adapter
Convenience functions for creating and using callbacks
A non-blocking socket client.
Autmatically manage a collection of collectible objects
non-blocking client socket connector
A stand-alone multi-shot periodic callback
Watch the exit of a subprocess by its SIGCHLD signal.
Communicate with POE components expecting events.
Communicate with POE components expecting postbacks.
Watch events from a POE::Session object.
Base class for POE::Wheel wrappers.
Represent POE::Wheel::Run as a Reflex class.
define a Reflex paramaterized role
add connection accepting to a class
add manageability by Reflex::Collection
add non-blocking client connecting to a class
add streaming input behavior to a class
set a periodic, recurring timer
add streaming input behavior to a class
add async process reaping behavior to a class
Make an object reactive (aka, event driven).
add readable-watching behavior to a class
add standard sysread() behavior to a class
Mix standard send/recv code into a class.
add signal catching behavior to a class
add streaming I/O behavior to a class
set a wakeup callback for a relative delay
set a wakeup callback for a particular UNIX time
add writable-watching behavior to a class
add buffered non-blocking syswrite() to a class
receive callbacks when signals arrive
Buffered, translated I/O on non-blocking handles.
A stand-alone single-shot delayed callback
Emit an event when an attribute's value changes.
Automaticall watch Reflex objects.
Automatically watch Reflex objects.
Base class for non-blocking UDP networking peers.
A stand-alone single-shot callback at an absolute time

Provides

in docs/intro/AfterAwhileClass.pm
in docs/intro/AfterAwhileRole.pm
in docs/intro/AfterAwhileSubclass.pm
in docs/intro/AsyncAwhileClass.pm
in docs/intro/AsyncAwhileRole.pm
in lib/Reflex/Codec/Message.pm
in lib/Reflex/Codec/Message/Datagram.pm
in lib/Reflex/Codec/Message/Eof.pm
in lib/Reflex/Codec/Message/Stream.pm
in lib/Reflex/Decoder/Line.pm
in lib/Reflex/Eg.pm
in lib/Reflex/Eg/Inheritance/Moose.pm
in lib/Reflex/Eg/Inheritance/Plain.pm
in lib/Reflex/Encoder/Line.pm
in lib/Reflex/Event.pm
in lib/Reflex/Event/Datagram.pm
in lib/Reflex/Event/EOF.pm
in lib/Reflex/Event/Error.pm
in lib/Reflex/Event/FileHandle.pm
in lib/Reflex/Event/Flushed.pm
in lib/Reflex/Event/Interval.pm
in lib/Reflex/Event/Octets.pm
in lib/Reflex/Event/POE.pm
in lib/Reflex/Event/Postback.pm
in lib/Reflex/Event/SigChild.pm
in lib/Reflex/Event/Signal.pm
in lib/Reflex/Event/Socket.pm
in lib/Reflex/Event/Time.pm
in lib/Reflex/Event/Timeout.pm
in lib/Reflex/Event/ValueChange.pm
in lib/Reflex/Event/Wakeup.pm
in lib/Reflex/Filehandle.pm
in lib/Reflex/Role/Decoding.pm
in lib/Reflex/Role/Decoding/Datagram.pm
in lib/Reflex/Role/Decoding/Stream.pm
in lib/Reflex/Role/Encoding.pm

Examples