diff options
author | 2017-02-01 21:13:23 +0200 | |
---|---|---|
committer | 2017-02-02 14:26:12 +0200 | |
commit | 781d71db20b0c5acbe940eff1b1ef2f1b765ce54 (patch) | |
tree | 444ef9944a789eaf7d51729d8e84f0b1ab70bda4 /scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py | |
parent | 7b39a77194c736194b40a40fdd19928b98310959 (diff) |
zmq os independent
Change-Id: Iaf5a782be4db26a979a7535454719e8e62b5969a
Signed-off-by: Yaroslav Brustinov <ybrustin@cisco.com>
Diffstat (limited to 'scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py')
-rw-r--r-- | scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py b/scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py new file mode 100644 index 00000000..26c01969 --- /dev/null +++ b/scripts/external_libs/pyzmq-14.5.0/python2/ucs2/64bit/zmq/utils/interop.py @@ -0,0 +1,33 @@ +"""Utils for interoperability with other libraries. + +Just CFFI pointer casting for now. +""" + +# Copyright (C) PyZMQ Developers +# Distributed under the terms of the Modified BSD License. + + +try: + long +except NameError: + long = int # Python 3 + + +def cast_int_addr(n): + """Cast an address to a Python int + + This could be a Python integer or a CFFI pointer + """ + if isinstance(n, (int, long)): + return n + try: + import cffi + except ImportError: + pass + else: + # from pyzmq, this is an FFI void * + ffi = cffi.FFI() + if isinstance(n, ffi.CData): + return int(ffi.cast("size_t", n)) + + raise ValueError("Cannot cast %r to int" % n) |