… | |
… | |
868 | |
868 | |
869 | |
869 | |
870 | =head1 OTHER MODULES |
870 | =head1 OTHER MODULES |
871 | |
871 | |
872 | The following is a non-exhaustive list of additional modules that use |
872 | The following is a non-exhaustive list of additional modules that use |
873 | AnyEvent and can therefore be mixed easily with other AnyEvent modules |
873 | AnyEvent as a client and can therefore be mixed easily with other AnyEvent |
874 | in the same program. Some of the modules come with AnyEvent, some are |
874 | modules and other event loops in the same program. Some of the modules |
875 | available via CPAN. |
875 | come with AnyEvent, most are available via CPAN. |
876 | |
876 | |
877 | =over 4 |
877 | =over 4 |
878 | |
878 | |
879 | =item L<AnyEvent::Util> |
879 | =item L<AnyEvent::Util> |
880 | |
880 | |
… | |
… | |
889 | |
889 | |
890 | =item L<AnyEvent::Handle> |
890 | =item L<AnyEvent::Handle> |
891 | |
891 | |
892 | Provide read and write buffers, manages watchers for reads and writes, |
892 | Provide read and write buffers, manages watchers for reads and writes, |
893 | supports raw and formatted I/O, I/O queued and fully transparent and |
893 | supports raw and formatted I/O, I/O queued and fully transparent and |
894 | non-blocking SSL/TLS. |
894 | non-blocking SSL/TLS (via L<AnyEvent::TLS>. |
895 | |
895 | |
896 | =item L<AnyEvent::DNS> |
896 | =item L<AnyEvent::DNS> |
897 | |
897 | |
898 | Provides rich asynchronous DNS resolver capabilities. |
898 | Provides rich asynchronous DNS resolver capabilities. |
899 | |
899 | |
… | |
… | |
927 | |
927 | |
928 | =item L<AnyEvent::GPSD> |
928 | =item L<AnyEvent::GPSD> |
929 | |
929 | |
930 | A non-blocking interface to gpsd, a daemon delivering GPS information. |
930 | A non-blocking interface to gpsd, a daemon delivering GPS information. |
931 | |
931 | |
|
|
932 | =item L<AnyEvent::IRC> |
|
|
933 | |
|
|
934 | AnyEvent based IRC client module family (replacing the older Net::IRC3). |
|
|
935 | |
|
|
936 | =item L<AnyEvent::XMPP> |
|
|
937 | |
|
|
938 | AnyEvent based XMPP (Jabber protocol) module family (replacing the older |
|
|
939 | Net::XMPP2>. |
|
|
940 | |
932 | =item L<AnyEvent::IGS> |
941 | =item L<AnyEvent::IGS> |
933 | |
942 | |
934 | A non-blocking interface to the Internet Go Server protocol (used by |
943 | A non-blocking interface to the Internet Go Server protocol (used by |
935 | L<App::IGS>). |
944 | L<App::IGS>). |
936 | |
945 | |
937 | =item L<AnyEvent::IRC> |
|
|
938 | |
|
|
939 | AnyEvent based IRC client module family (replacing the older Net::IRC3). |
|
|
940 | |
|
|
941 | =item L<Net::XMPP2> |
|
|
942 | |
|
|
943 | AnyEvent based XMPP (Jabber protocol) module family. |
|
|
944 | |
|
|
945 | =item L<Net::FCP> |
946 | =item L<Net::FCP> |
946 | |
947 | |
947 | AnyEvent-based implementation of the Freenet Client Protocol, birthplace |
948 | AnyEvent-based implementation of the Freenet Client Protocol, birthplace |
948 | of AnyEvent. |
949 | of AnyEvent. |
949 | |
950 | |
… | |
… | |
952 | High level API for event-based execution flow control. |
953 | High level API for event-based execution flow control. |
953 | |
954 | |
954 | =item L<Coro> |
955 | =item L<Coro> |
955 | |
956 | |
956 | Has special support for AnyEvent via L<Coro::AnyEvent>. |
957 | Has special support for AnyEvent via L<Coro::AnyEvent>. |
957 | |
|
|
958 | =item L<IO::Lambda> |
|
|
959 | |
|
|
960 | The lambda approach to I/O - don't ask, look there. Can use AnyEvent. |
|
|
961 | |
958 | |
962 | =back |
959 | =back |
963 | |
960 | |
964 | =cut |
961 | =cut |
965 | |
962 | |
… | |
… | |
2119 | L<Glib>, L<Tk>, L<Event::Lib>, L<Qt>, L<POE>. |
2116 | L<Glib>, L<Tk>, L<Event::Lib>, L<Qt>, L<POE>. |
2120 | |
2117 | |
2121 | Implementations: L<AnyEvent::Impl::EV>, L<AnyEvent::Impl::Event>, |
2118 | Implementations: L<AnyEvent::Impl::EV>, L<AnyEvent::Impl::Event>, |
2122 | L<AnyEvent::Impl::Glib>, L<AnyEvent::Impl::Tk>, L<AnyEvent::Impl::Perl>, |
2119 | L<AnyEvent::Impl::Glib>, L<AnyEvent::Impl::Tk>, L<AnyEvent::Impl::Perl>, |
2123 | L<AnyEvent::Impl::EventLib>, L<AnyEvent::Impl::Qt>, |
2120 | L<AnyEvent::Impl::EventLib>, L<AnyEvent::Impl::Qt>, |
2124 | L<AnyEvent::Impl::POE>. |
2121 | L<AnyEvent::Impl::POE>, L<AnyEvent::Impl::IOAsync>. |
2125 | |
2122 | |
2126 | Non-blocking file handles, sockets, TCP clients and |
2123 | Non-blocking file handles, sockets, TCP clients and |
2127 | servers: L<AnyEvent::Handle>, L<AnyEvent::Socket>. |
2124 | servers: L<AnyEvent::Handle>, L<AnyEvent::Socket>, L<AnyEvent::TLS>. |
2128 | |
2125 | |
2129 | Asynchronous DNS: L<AnyEvent::DNS>. |
2126 | Asynchronous DNS: L<AnyEvent::DNS>. |
2130 | |
2127 | |
2131 | Coroutine support: L<Coro>, L<Coro::AnyEvent>, L<Coro::EV>, L<Coro::Event>, |
2128 | Coroutine support: L<Coro>, L<Coro::AnyEvent>, L<Coro::EV>, |
|
|
2129 | L<Coro::Event>, |
2132 | |
2130 | |
2133 | Nontrivial usage examples: L<Net::FCP>, L<Net::XMPP2>, L<AnyEvent::DNS>. |
2131 | Nontrivial usage examples: L<AnyEvent::GPSD>, L<AnyEvent::XMPP>, |
|
|
2132 | L<AnyEvent::HTTP>. |
2134 | |
2133 | |
2135 | |
2134 | |
2136 | =head1 AUTHOR |
2135 | =head1 AUTHOR |
2137 | |
2136 | |
2138 | Marc Lehmann <schmorp@schmorp.de> |
2137 | Marc Lehmann <schmorp@schmorp.de> |