Trait string_interner::Symbol
source · pub trait Symbol: Copy + Eq {
// Required methods
fn try_from_usize(index: usize) -> Option<Self>;
fn to_usize(self) -> usize;
}
Expand description
Types implementing this trait can be used as symbols for string interners.
The StringInterner::get_or_intern
method returns Symbol
types that allow to look-up the original string
using StringInterner::resolve
.
§Note
Optimal symbols allow for efficient comparisons and have a small memory footprint.
Required Methods§
sourcefn try_from_usize(index: usize) -> Option<Self>
fn try_from_usize(index: usize) -> Option<Self>
Creates a symbol from a usize
.
Returns None
if index
is out of bounds for the symbol.
Object Safety§
This trait is not object safe.