… | |
… | |
3944 | watchers in the constructor. |
3944 | watchers in the constructor. |
3945 | |
3945 | |
3946 | class myclass |
3946 | class myclass |
3947 | { |
3947 | { |
3948 | ev::io io ; void io_cb (ev::io &w, int revents); |
3948 | ev::io io ; void io_cb (ev::io &w, int revents); |
3949 | ev::io2 io2 ; void io2_cb (ev::io &w, int revents); |
3949 | ev::io io2 ; void io2_cb (ev::io &w, int revents); |
3950 | ev::idle idle; void idle_cb (ev::idle &w, int revents); |
3950 | ev::idle idle; void idle_cb (ev::idle &w, int revents); |
3951 | |
3951 | |
3952 | myclass (int fd) |
3952 | myclass (int fd) |
3953 | { |
3953 | { |
3954 | io .set <myclass, &myclass::io_cb > (this); |
3954 | io .set <myclass, &myclass::io_cb > (this); |
… | |
… | |
4005 | L<http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hlibev>. |
4005 | L<http://hackage.haskell.org/cgi-bin/hackage-scripts/package/hlibev>. |
4006 | |
4006 | |
4007 | =item D |
4007 | =item D |
4008 | |
4008 | |
4009 | Leandro Lucarella has written a D language binding (F<ev.d>) for libev, to |
4009 | Leandro Lucarella has written a D language binding (F<ev.d>) for libev, to |
4010 | be found at L<http://proj.llucax.com.ar/wiki/evd>. |
4010 | be found at L<http://www.llucax.com.ar/proj/ev.d/index.html>. |
4011 | |
4011 | |
4012 | =item Ocaml |
4012 | =item Ocaml |
4013 | |
4013 | |
4014 | Erkki Seppala has written Ocaml bindings for libev, to be found at |
4014 | Erkki Seppala has written Ocaml bindings for libev, to be found at |
4015 | L<http://modeemi.cs.tut.fi/~flux/software/ocaml-ev/>. |
4015 | L<http://modeemi.cs.tut.fi/~flux/software/ocaml-ev/>. |
… | |
… | |
5048 | |
5048 | |
5049 | The type C<double> is used to represent timestamps. It is required to |
5049 | The type C<double> is used to represent timestamps. It is required to |
5050 | have at least 51 bits of mantissa (and 9 bits of exponent), which is |
5050 | have at least 51 bits of mantissa (and 9 bits of exponent), which is |
5051 | good enough for at least into the year 4000 with millisecond accuracy |
5051 | good enough for at least into the year 4000 with millisecond accuracy |
5052 | (the design goal for libev). This requirement is overfulfilled by |
5052 | (the design goal for libev). This requirement is overfulfilled by |
5053 | implementations using IEEE 754, which is basically all existing ones. With |
5053 | implementations using IEEE 754, which is basically all existing ones. |
|
|
5054 | |
5054 | IEEE 754 doubles, you get microsecond accuracy until at least 2200. |
5055 | With IEEE 754 doubles, you get microsecond accuracy until at least the |
|
|
5056 | year 2255 (and millisecond accuray till the year 287396 - by then, libev |
|
|
5057 | is either obsolete or somebody patched it to use C<long double> or |
|
|
5058 | something like that, just kidding). |
5055 | |
5059 | |
5056 | =back |
5060 | =back |
5057 | |
5061 | |
5058 | If you know of other additional requirements drop me a note. |
5062 | If you know of other additional requirements drop me a note. |
5059 | |
5063 | |