Coding Guidelines
Use these pages when changing cuVS APIs, implementation code, bindings, packaging, or developer-facing documentation. They collect the conventions that keep cuVS predictable for contributors and downstream projects.
Language Guidelines
- C Guidelines: design ABI-stable C APIs, manage opaque handles, and keep lifecycle, error handling, and documentation patterns consistent.
- C++ Guidelines: design public C++ APIs, manage CUDA resources, follow stateless API patterns, and write implementation code that fits cuVS conventions.
- Java Guidelines: update Java APIs, Panama bindings, native resource ownership, Maven packaging, and Java-facing documentation consistently.
- Python Guidelines: update Python APIs, Cython bindings, packaging, formatting, and Python-facing documentation consistently.