99fdafbb88
* Add `MODULE` const value to `PyTypeInfo` trait * Allow setting module name in `pyclass` macro arguments * Add `$module` argument to `pyobject_native_type` macro in `pyo3::types` * Set the right module for builtin types in `pyo3::types` * Add `module` argument to example `word_count.WordCounter` class * Add `module` argument of `pyclass` macro to guide * Reformat code using `rustfmt` * Add tests and entry in CHANGELOG.md for `module` argument in `pyclass` * Make `$module` parameter in `pyobject_native_type` optional * Make `pyobject_native_type` declare module as `Some("builtins")` by default |
||
---|---|---|
.. | ||
src | ||
tests | ||
word_count | ||
Cargo.toml | ||
MANIFEST.in | ||
pyproject.toml | ||
README.md | ||
requirements-dev.txt | ||
setup.py | ||
tox.ini |
word-count
Demonstrates searching for a file in plain python, with rust singlethreaded and with rust multithreaded.
Build
python setup.py install
Usage
from word_count import search_py, WordCounter
search_py("path/to/file", "word")
WordCounter("path/to/file").search("word")
WordCounter("path/to/file").search_sequential("word")
Benchmark
Install the depedencies:
pip install -r requirements-dev.txt
There is a benchmark in tests/test_word_count.py
:
pytest -v tests
Testing
To test python 3.5, 3.6 and 3.7, install tox globally and run
tox