is-rust
Have you ever wanted to know if a value is rust, or at least rusty?
Maybe you're doing form validation for a Rust position at your company, and you want to make sure that someone only inputs Rust-acceptable values. Say that your form looks like this:
1: "What is your favourite programming language?"
<answer>
2: "What language runs blazingly fast, prevents segfaults, and guarentees
thread safety?"
<answer>
3: "What is your favourite colour defined in RGB?"
<answer>
4: "When someone hasn't practiced something for a while, what would you call
them?"
<answer>
Using typical form validation, you would have to define acceptable answers
yourself. Using this library, you can simply use the function is_rust
or is_at_least_rusty
for all inputs.
Examples
For example, rust is rust:
extern crate is_rust;
assert!(is_rust::is_rust("rust")); // this is rust
Similarly, Rust is rust:
extern crate is_rust;
assert!(is_rust::is_rust("Rust")); // this is rust
It's all rust, except for strings that are not "rust", "b7410e", or the RGB
value 173, 65, 14
. Other than that, it's Rust. You can confirm this due to
the fact that Python is not Rust:
extern crate is_rust;
assert!(!is_rust::is_rust("python")); // python is obviously not rust
Additionally you can check that something is rusty:
extern crate is_rust;
assert!(is_rust::is_rusty("rusty"));
Something can be at least rusty, or rust itself:
extern crate is_rust;
assert!(is_rust::is_at_least_rusty("rusty"));
assert!(is_rust::is_at_least_rusty("rust"));
You can check that a set of input is very rusty, ensuring that all input values are rust:
extern crate is_rust;
assert!(is_rust::is_very_rusty(&["rust", "Rust", "RUST", "b7410e"]));
Lastly, you can check that something is not rust, because booleans are hard:
extern crate is_rust;
assert!(is_rust::is_not_rust("Python"));
At this point, Rust should no longer sound like a word.
no_std
This crate supports no_std
use cases, but without some string checks (such as
not lowercasing strings).
To enable no_std
support, explicitly disable the std
feature in your
Cargo.toml
:
[dependencies.is-rust]
default-features = false
features = []
version = "~0.1"
Installation
To install this library to check whether values are Rust, you can use Rust's
Cargo. Add the following to your Rust project's Cargo.toml
:
[dependencies]
is-rust = "https://github.com/zeyla/is-rust"
License
ISC.