From 1e87bed8c7bb0d4377ccbac63071eadca56bb3b7 Mon Sep 17 00:00:00 2001 From: Jason Paryani Date: Sun, 8 Dec 2013 17:43:08 -0800 Subject: [PATCH] Refactor capnp.pyx to be in lib subdirectory --- .gitignore | 2 -- capnp/__init__.py | 5 ++--- capnp/helpers/helpers.pxd | 6 +++--- capnp/helpers/non_circular.pxd | 4 ++-- capnp/includes/capnp_cpp.pxd | 8 ++++---- capnp/includes/schema_cpp.pxd | 4 +--- capnp/lib/__init__.pxd | 0 capnp/lib/__init__.py | 0 capnp/{ => lib}/capnp.pyx | 0 setup.py | 4 ++-- 10 files changed, 14 insertions(+), 19 deletions(-) create mode 100644 capnp/lib/__init__.pxd create mode 100644 capnp/lib/__init__.py rename capnp/{ => lib}/capnp.pyx (100%) diff --git a/.gitignore b/.gitignore index a0f6c78..34db373 100644 --- a/.gitignore +++ b/.gitignore @@ -15,8 +15,6 @@ var sdist develop-eggs .installed.cfg -lib -lib64 # Installer logs pip-log.txt diff --git a/capnp/__init__.py b/capnp/__init__.py index cc982ac..0685f93 100644 --- a/capnp/__init__.py +++ b/capnp/__init__.py @@ -32,8 +32,7 @@ Example Usage:: print(phone.type, ':', phone.number) """ from .version import version as __version__ -from .capnp import * -from .capnp import _DynamicStructReader, _DynamicStructBuilder, _DynamicResizableListBuilder, _DynamicListReader, _DynamicListBuilder, _DynamicOrphan, _DynamicResizableListBuilder, _MallocMessageBuilder, _PackedFdMessageReader, _StreamFdMessageReader, _write_message_to_fd, _write_packed_message_to_fd, _StructModule, _InterfaceModule, _DynamicCapabilityClient, _CapabilityClient, _EventLoop -del capnp +from .lib.capnp import * +from .lib.capnp import _DynamicStructReader, _DynamicStructBuilder, _DynamicResizableListBuilder, _DynamicListReader, _DynamicListBuilder, _DynamicOrphan, _DynamicResizableListBuilder, _MallocMessageBuilder, _PackedFdMessageReader, _StreamFdMessageReader, _write_message_to_fd, _write_packed_message_to_fd, _StructModule, _InterfaceModule, _DynamicCapabilityClient, _CapabilityClient, _EventLoop add_import_hook() # enable import hook by default diff --git a/capnp/helpers/helpers.pxd b/capnp/helpers/helpers.pxd index 679fd2b..7654cc8 100644 --- a/capnp/helpers/helpers.pxd +++ b/capnp/helpers/helpers.pxd @@ -4,13 +4,13 @@ from non_circular cimport reraise_kj_exception from cpython.ref cimport PyObject -cdef extern from "helpers/fixMaybe.h": +cdef extern from "../helpers/fixMaybe.h": EnumSchema.Enumerant fixMaybe(Maybe[EnumSchema.Enumerant]) except +reraise_kj_exception char * getEnumString(DynamicStruct.Reader val) char * getEnumString(DynamicStruct.Builder val) char * getEnumString(Request val) -cdef extern from "helpers/capabilityHelper.h": +cdef extern from "../helpers/capabilityHelper.h": # PyPromise evalLater(EventLoop &, PyObject * func) # PyPromise there(EventLoop & loop, PyPromise & promise, PyObject * func, PyObject * error_func) PyPromise then(PyPromise & promise, PyObject * func, PyObject * error_func) @@ -21,7 +21,7 @@ cdef extern from "helpers/capabilityHelper.h": Capability.Client server_to_client(InterfaceSchema&, PyObject *) PyPromise convert_to_pypromise(RemotePromise&) -cdef extern from "helpers/rpcHelper.h": +cdef extern from "../helpers/rpcHelper.h": cdef cppclass PyRestorer: PyRestorer(PyObject *, StructSchema&) Capability.Client restoreHelper(RpcSystem&, MessageBuilder&) diff --git a/capnp/helpers/non_circular.pxd b/capnp/helpers/non_circular.pxd index f5deb43..fc4231e 100644 --- a/capnp/helpers/non_circular.pxd +++ b/capnp/helpers/non_circular.pxd @@ -1,8 +1,8 @@ from cpython.ref cimport PyObject -cdef extern from "helpers/capabilityHelper.h": +cdef extern from "../helpers/capabilityHelper.h": cppclass PythonInterfaceDynamicImpl: PythonInterfaceDynamicImpl(PyObject *) -cdef extern from "helpers/capabilityHelper.h": +cdef extern from "../helpers/capabilityHelper.h": void reraise_kj_exception() \ No newline at end of file diff --git a/capnp/includes/capnp_cpp.pxd b/capnp/includes/capnp_cpp.pxd index 0ddd5b6..a1bb81c 100644 --- a/capnp/includes/capnp_cpp.pxd +++ b/capnp/includes/capnp_cpp.pxd @@ -1,7 +1,7 @@ # schema.capnp.cpp.pyx # distutils: language = c++ # distutils: extra_compile_args = --std=c++11 -cdef extern from "helpers/checkCompiler.h": +cdef extern from "../helpers/checkCompiler.h": pass from schema_cpp cimport Node, Data, StructNode, EnumNode, InterfaceNode, MessageBuilder, MessageReader @@ -253,13 +253,13 @@ cdef extern from "capnp/any.h" namespace " ::capnp": Builder(Builder) DynamicStruct.Builder getAs"getAs< ::capnp::DynamicStruct>"(StructSchema) -cdef extern from "helpers/fixMaybe.h": +cdef extern from "../helpers/fixMaybe.h": EnumSchema.Enumerant fixMaybe(Maybe[EnumSchema.Enumerant]) except +reraise_kj_exception char * getEnumString(DynamicStruct.Reader val) char * getEnumString(DynamicStruct.Builder val) char * getEnumString(Request val) -cdef extern from "helpers/capabilityHelper.h": +cdef extern from "../helpers/capabilityHelper.h": # PyPromise evalLater(EventLoop &, PyObject * func) # PyPromise there(EventLoop & loop, PyPromise & promise, PyObject * func, PyObject * error_func) PyPromise then(PyPromise & promise, PyObject * func, PyObject * error_func) @@ -270,7 +270,7 @@ cdef extern from "helpers/capabilityHelper.h": Capability.Client server_to_client(InterfaceSchema&, PyObject *) PyPromise convert_to_pypromise(RemotePromise&) -cdef extern from "helpers/rpcHelper.h": +cdef extern from "../helpers/rpcHelper.h": cdef cppclass PyRestorer: PyRestorer(PyObject *, StructSchema&) Capability.Client restoreHelper(RpcSystem&, MessageBuilder&) diff --git a/capnp/includes/schema_cpp.pxd b/capnp/includes/schema_cpp.pxd index 750aa94..122bdc6 100644 --- a/capnp/includes/schema_cpp.pxd +++ b/capnp/includes/schema_cpp.pxd @@ -5,6 +5,7 @@ from libc.stdint cimport * from capnp_cpp cimport DynamicOrphan +from .capnp.helpers.non_circular cimport reraise_kj_exception ctypedef unsigned int uint ctypedef uint8_t byte ctypedef uint8_t UInt8 @@ -718,9 +719,6 @@ cdef extern from "kj/array.h" namespace " ::kj": word* begin() size_t size() -cdef extern from "helpers/capabilityHelper.h": - void reraise_kj_exception() - cdef extern from "kj/array.h" namespace " ::kj": cdef cppclass InputStream: void read(void* buffer, size_t bytes) except +reraise_kj_exception diff --git a/capnp/lib/__init__.pxd b/capnp/lib/__init__.pxd new file mode 100644 index 0000000..e69de29 diff --git a/capnp/lib/__init__.py b/capnp/lib/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/capnp/capnp.pyx b/capnp/lib/capnp.pyx similarity index 100% rename from capnp/capnp.pyx rename to capnp/lib/capnp.pyx diff --git a/setup.py b/setup.py index 43790f3..f1863ac 100644 --- a/setup.py +++ b/setup.py @@ -48,8 +48,8 @@ setup( name="pycapnp", packages=["capnp"], version=VERSION, - package_data={'capnp': ['*.pxd', '*.pyx', '*.h', 'helpers/*.pxd', 'helpers/*.h', 'includes/*.pxd']}, - ext_modules=cythonize('capnp/*.pyx', language="c++"), + package_data={'capnp': ['*.pxd', '*.h', 'helpers/*.pxd', 'helpers/*.h', 'includes/*.pxd', 'lib/*.pxd', 'lib/*.py']}, + ext_modules=cythonize('capnp/lib/*.pyx', language="c++"), install_requires=[ 'cython > 0.19', 'setuptools >= 0.8'],