pub struct RecommendationEngine { /* private fields */ }Expand description
Main recommendation engine
Implementations§
Source§impl RecommendationEngine
impl RecommendationEngine
Sourcepub fn new(config: RecommendationConfig) -> Self
pub fn new(config: RecommendationConfig) -> Self
Create a new recommendation engine
Sourcepub fn add_tuple(&mut self, tuple: &RelationTuple)
pub fn add_tuple(&mut self, tuple: &RelationTuple)
Add a tuple to be analyzed
Sourcepub fn record_access(
&mut self,
subject_id: &str,
resource_id: &str,
relation: &str,
)
pub fn record_access( &mut self, subject_id: &str, resource_id: &str, relation: &str, )
Record an access event (used for usage tracking)
Sourcepub fn generate_recommendations(&self) -> Vec<Recommendation>
pub fn generate_recommendations(&self) -> Vec<Recommendation>
Generate recommendations based on collected data
Sourcepub fn get_tuple_usage(&self, tuple: &RelationTuple) -> Option<UsageStats>
pub fn get_tuple_usage(&self, tuple: &RelationTuple) -> Option<UsageStats>
Get usage statistics for a specific tuple
Sourcepub fn cleanup(&mut self, cutoff: SystemTime)
pub fn cleanup(&mut self, cutoff: SystemTime)
Clear old data
Auto Trait Implementations§
impl Freeze for RecommendationEngine
impl RefUnwindSafe for RecommendationEngine
impl Send for RecommendationEngine
impl Sync for RecommendationEngine
impl Unpin for RecommendationEngine
impl UnwindSafe for RecommendationEngine
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