123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- import os.path
- import cytoolz
- __all__ = ['raises', 'no_default', 'include_dirs', 'consume']
- try:
- # Attempt to get the no_default sentinel object from toolz
- from toolz.utils import no_default
- except ImportError:
- no_default = '__no__default__'
- def raises(err, lamda):
- try:
- lamda()
- return False
- except err:
- return True
- def include_dirs():
- """ Return a list of directories containing the *.pxd files for ``cytoolz``
- Use this to include ``cytoolz`` in your own Cython project, which allows
- fast C bindinds to be imported such as ``from cytoolz cimport get``.
- Below is a minimal "setup.py" file using ``include_dirs``:
- from distutils.core import setup
- from distutils.extension import Extension
- from Cython.Distutils import build_ext
- import cytoolz.utils
- ext_modules=[
- Extension("mymodule",
- ["mymodule.pyx"],
- include_dirs=cytoolz.utils.include_dirs()
- )
- ]
- setup(
- name = "mymodule",
- cmdclass = {"build_ext": build_ext},
- ext_modules = ext_modules
- )
- """
- return os.path.split(cytoolz.__path__[0])
- cpdef object consume(object seq):
- """
- Efficiently consume an iterable """
- for _ in seq:
- pass
|