Public declaration syntax from forge-rs/crates/forge-memory/src/policy.rs Original source SHA-256: a0eda999bc0b6b80fe78d40c72c67f4406da25d6495a821a01ae933028736de1 Function bodies and constant values are omitted. This is not the complete implementation. Source line 35 #[derive(Debug, Clone, Serialize, Deserialize)] pub struct RetrievalPolicy { } Source line 44 pub fn builder() -> RetrievalPolicyBuilder; Source line 51 pub fn can_read_scope(&self, scope: &MemoryScope) -> bool; Source line 61 pub fn can_read_type(&self, memory_type: &MemoryType) -> bool; Source line 69 pub fn min_confidence(&self) -> f32; Source line 74 pub fn max_results(&self) -> usize; Source line 94 #[derive(Debug, Default)] pub struct RetrievalPolicyBuilder { } Source line 103 pub fn new() -> Self; Source line 111 pub fn allow_scope(mut self, scope: MemoryScope) -> Self; Source line 117 pub fn allow_type(mut self, memory_type: MemoryType) -> Self; Source line 123 pub fn min_confidence(mut self, min: f32) -> Self; Source line 129 pub fn max_results(mut self, max: usize) -> Self; Source line 135 pub fn build(self) -> RetrievalPolicy; Source line 157 #[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)] #[serde(rename_all = "snake_case")] pub enum WriteBackTrigger { /// Write immediately when store() is called. Immediate, /// Batch writes and flush periodically. Batched, /// Only write back on explicit flush or session close. OnFlush, /// Never persist (task-scoped, discarded on completion). Never, } Source line 189 #[derive(Debug, Clone, Serialize, Deserialize)] pub struct WriteBackPolicy { } Source line 199 pub fn builder() -> WriteBackPolicyBuilder; Source line 204 pub fn trigger(&self) -> WriteBackTrigger; Source line 211 pub fn can_write_scope(&self, scope: &MemoryScope) -> bool; Source line 219 pub fn min_confidence_for_persistence(&self) -> f32; Source line 224 pub fn batch_size(&self) -> usize; Source line 229 pub fn batch_interval_seconds(&self) -> u64; Source line 250 #[derive(Debug, Default)] pub struct WriteBackPolicyBuilder { } Source line 260 pub fn new() -> Self; Source line 269 pub fn trigger(mut self, trigger: WriteBackTrigger) -> Self; Source line 275 pub fn allow_scope(mut self, scope: MemoryScope) -> Self; Source line 281 pub fn min_confidence_for_persistence(mut self, min: f32) -> Self; Source line 287 pub fn batch_size(mut self, size: usize) -> Self; Source line 293 pub fn batch_interval_seconds(mut self, seconds: u64) -> Self; Source line 299 pub fn build(self) -> WriteBackPolicy;