NAME IO::Async::Loop::IO::Async - use "IO::Async" with "IO::Async" SYNOPSIS use IO::Async::Loop::IO::Async; my $loop = IO::Async::Loop::IO::Async->new(); $loop->add( ... ); $loop->add( IO::Async::Signal->new( name => 'HUP', on_receipt => sub { ... }, ) ); $loop->loop_forever(); DESCRIPTION This subclass of IO::Async::Loop uses another instance of an "IO::Async::Loop" object as its underlying implementation. While this at first appears to be pointless, this module distribution is not primarily intended to serve a useful purpose for end-users. Rather, it stands as a real code example, for authors of other modules to use for reference. For "IO::Async::Loop::*" Authors Authors of other subclasses to implement "IO::Async::Loop" subclasses may find this distribution useful as a template. By copying the code and replacing the contents of the various "watch_*" and "unwatch_*" methods, a Loop implementation can be built making use of some other event system or underlying kernel blocking primative. For Authors of Other Event Systems Authors of implementations in other event systems wishing to support running their event system on top of IO::Async may find this distribution useful to read a way to implement the various underlying behaviours, such as watching filehandles and timers. Examples in each of the "watch_*" and "unwatch_*" methods may be useful to demonstrate the sort of code that might be required to attach some other event system on top of "IO::Async". CONSTRUCTOR $loop = IO::Async::Loop::IO::Async->new() This function returns a new instance of a "IO::Async::Loop::IO::Async" object. METHODS $loop->parent_loop( $parent ) $parent = $loop->parent_loop Accessor for the underlying "IO::Async::Loop" that this loop will use. If one is not provided by the time that "loop_once" is first invoked, one will be constructed using the normal "IO::Async::Loop->new" constructor. This method may be used to access it after that. AUTHOR Paul Evans