| --- |
| short-description: Rust language integration module |
| authors: |
| - name: Dylan Baker |
| email: dylan@pnwbakers.com |
| years: [2020] |
| ... |
| |
| # Unstable Rust module |
| |
| *(new in 0.57.0)* |
| |
| **Note** Unstable modules make no backwards compatible API guarantees. |
| |
| The rust module provides helper to integrate rust code into meson. The goal |
| is to make using rust in meson more pleasant, while still remaining mesonic, |
| this means that it attempts to make rust work more like meson, rather than |
| meson work more like rust. |
| |
| ## Functions |
| |
| ### test(name: string, target: library | executable, dependencies: []Dependency) |
| |
| This function creates a new rust unittest target from an existing rust based |
| target, which may be a library or executable. It does this by copying the |
| sources and arguments passed to the original target and adding the `--test` |
| argument to the compilation, then creates a new test target which calls that |
| executable, using the rust test protocol. |
| |
| This accepts all of the keyword arguments as the |
| [`test`](Reference-manual.md#test) function except `protocol`, it will set |
| that automatically. |
| |
| Additional, test only dependencies may be passed via the dependencies |
| argument. |