pub struct ScopeRegistry { /* private fields */ }Expand description
全局作用域注册表
管理多个 GlobalScope 的启用/禁用状态。
典型用法:临时禁用软删除作用域以查询已删除行(without_scope)。
Implementations§
Source§impl ScopeRegistry
impl ScopeRegistry
Sourcepub fn new() -> ScopeRegistry
pub fn new() -> ScopeRegistry
创建空注册表(所有作用域默认启用)
Sourcepub fn is_enabled(&self, scope_name: &str) -> bool
pub fn is_enabled(&self, scope_name: &str) -> bool
检查作用域是否启用
Sourcepub fn without_scope<F, R>(&self, scope_name: &str, f: F) -> Rwhere
F: FnOnce() -> R,
pub fn without_scope<F, R>(&self, scope_name: &str, f: F) -> Rwhere
F: FnOnce() -> R,
在闭包内临时禁用作用域
let registry = ScopeRegistry::new();
registry.without_scope("soft_delete", || {
// 此处查询会包含已软删除的行
});Trait Implementations§
Source§impl Default for ScopeRegistry
impl Default for ScopeRegistry
Source§fn default() -> ScopeRegistry
fn default() -> ScopeRegistry
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl !Freeze for ScopeRegistry
impl RefUnwindSafe for ScopeRegistry
impl Send for ScopeRegistry
impl Sync for ScopeRegistry
impl Unpin for ScopeRegistry
impl UnsafeUnpin for ScopeRegistry
impl UnwindSafe for ScopeRegistry
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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