pub struct SymbolTable { /* private fields */ }Expand description
Immutable per-run symbol configuration
Stores weights and display names for all symbols used in a search. Built from a profile and user-defined constants/functions, then passed through the search pipeline for consistent behavior.
Implementations§
Source§impl SymbolTable
impl SymbolTable
Sourcepub fn from_profile(profile: &Profile) -> Self
pub fn from_profile(profile: &Profile) -> Self
Build a symbol table from a profile
Applies:
- Profile weight overrides
- Profile name overrides
- User constant names and weights
- User function names and weights
Sourcepub fn from_parts(
profile: &Profile,
user_constants: &[UserConstant],
user_functions: &[UserFunction],
) -> Self
pub fn from_parts( profile: &Profile, user_constants: &[UserConstant], user_functions: &[UserFunction], ) -> Self
Build from profile with explicit user constants and functions
This is useful when user constants/functions come from CLI args rather than a profile file.
Wrap this table in an Arc for sharing
Trait Implementations§
Source§impl Clone for SymbolTable
impl Clone for SymbolTable
Source§fn clone(&self) -> SymbolTable
fn clone(&self) -> SymbolTable
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SymbolTable
impl Debug for SymbolTable
Auto Trait Implementations§
impl Freeze for SymbolTable
impl RefUnwindSafe for SymbolTable
impl Send for SymbolTable
impl Sync for SymbolTable
impl Unpin for SymbolTable
impl UnsafeUnpin for SymbolTable
impl UnwindSafe for SymbolTable
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more