Expand description
strval is collection of types that keep values that can all be set from a
string value. It can be thought of as a generalized version of the
FromStr trait.
use strval::{
StrVal, Bool, BinU64Count, BinU64Size, DecU64Count, DecU64Size
};
let v: Bool = "true".parse().unwrap();
assert!(v.get());
assert_eq!(v.val_str(), Some(String::from("true")));
// "count" variant is assumed to not count bytes
let v: BinU64Count = "64k".parse().unwrap();
assert_eq!(v.get(), 65536);
assert_eq!(v.val_str(), Some(String::from("65536")));
// "size" variant is assumed to be a byte size
let v: BinU64Size = "64kb".parse().unwrap();
assert_eq!(v.get(), 65536);
assert_eq!(v.val_str(), Some(String::from("65536")));
// "count" variant is assumed to not count bytes
let v: DecU64Count = "64k".parse().unwrap();
assert_eq!(v.get(), 64000);
assert_eq!(v.val_str(), Some(String::from("64000")));
// "size" variant is assumed to be a byte size
let v: DecU64Size = "64kb".parse().unwrap();
assert_eq!(v.get(), 64000);
assert_eq!(v.val_str(), Some(String::from("64000")));§Features
| Feature | Function |
|---|---|
rusqlite | Implement ToSql/FromSql support for value types. |
Structs§
- AnyU64
- Accept any
u64. - AnyUsize
- Accept any
usize. - BinU64
Count - A
u64value that supports suffixes, like1k,2.5k, etc. - BinU64
Size - A
u64value that supports suffixes, like1kb,2.5kb, etc. - BinUsize
Count - A
usizevalue that supports suffixes, like1k,2.5k, etc. - BinUsize
Size - A
usizevalue that supports suffixes, like1kb,2.5kb, etc. - Bool
- A boolean value.
- DecU64
Count - A
u64value that supports suffixes, like1k,2.5k, etc. - DecU64
Size - A
u64value that supports suffixes, like1kb,2.5kb, etc. - DecUsize
Count - A
usizevalue that supports suffixes, like1k,2.5k, etc. - DecUsize
Size - A
usizevalue that supports suffixes, like1kb,2.5kb, etc. - Dur
- A string representation of a duration.
- Percent
- Specify a percentage, converted to a
f32betwwen0.0and1.0. - RelAbs
Lim - A relative or absolute limit.
- Select
- Select one element from a set.
- Str
- A plain text string.
Enums§
- Error
- Crate-specific errors.
Traits§
- Controller
- Define a default (string) value and provide a value validator.
- StrVal
- Traits for values that can be set from strings.