use ZMQ::Constants ':all'; # pulls in all constants for all versions
use ZMQ::Constants ':v3.1.1', ':all'; # pulls in constants for 3.1.1
use ZMQ::Constants ':v3.1.2', ':all'; # pulls in constants for 3.1.2
=head1 DESCRIPTION
libzmq is a fast-chanding beast and constants get renamed, new one gest
removed, etc...
We used to auto-generate constants from the libzmq source code, but then
adpating the binding code to this change got very tedious, and controling
which version contains which constants got very hard to manage.
This module is now separate from ZMQ main code, and lists the constants
statically. You can also specify which set of constants to pull in depending
on the zmq version.
If don't care to be strict about which constants to import into your code, then don't bother with the ':vX.X.X' notation, just use like a normal module:
use ZMQ::Constants qw(:all); # pulls all known constants...
# note: may contain extra constants
# if we have clashes in the future
use ZMQ::Constants qw(ZMQ_PUSH); # import just ZMQ_PUSH
=head1 SUPPORTED VERSIONS
I have checked that the constants for the following versions are available.
Please send pullreqs if there are new constants that are not defined.
=over 4
=item libzmq 2.1.11
=item libzmq 3.1.1
No ZMQ device related stuff
=item libzmq 3.1.2
NOTE: This is libzmq/master branch as of this writing. new constants may have been added.
Reintroduces ZMQ device related constants, and adds ZMQ_FAIL_UNROUTABLE
=back
=head1 FUNCTIONS
These functions are usually for internal use only. You should not need to
use them if you're just a ZMQ.pm user
=head2 register_set
Creates a new "set" of constants for a particular version.
=head2 get_sockopt_type
Gets the type for the given libzmq socket option. This is used when
ZMQ::getsockopt is called to determine the underlying socket option type