Skip to main content

Learnings

Struct Learnings 

Source
pub struct Learnings { /* private fields */ }
Expand description

Every learning the factory holds, across all agents.

Implementations§

Source§

impl Learnings

Source

pub fn new() -> Self

Creates an empty collection.

Source

pub fn from_entries(entries: Vec<Learning>) -> Self

Rebuilds from stored learnings.

Source

pub fn all(&self) -> impl Iterator<Item = &Learning>

Every learning, in the order they were first proposed.

Source

pub fn len(&self) -> usize

How many are held.

Source

pub fn is_empty(&self) -> bool

Returns true when nothing is held.

Source

pub fn get(&self, id: &LearningId) -> Option<&Learning>

Finds one by identifier.

Source

pub fn active_for(&self, agent: &AgentName) -> Vec<&Learning>

The learnings an agent’s next run should be given, oldest first.

Confirmed ones lead, because they have earned their place, and a run that has to skim is better off skimming the provisional tail.

Source

pub fn propose(&mut self, proposal: &Proposal) -> Uptake

Takes up a proposal, or explains why it was not taken up.

Source

pub fn charge_run(&mut self, agent: &AgentName) -> Vec<LearningId>

Charges one run against agent’s provisional learnings, lapsing any that run out.

Returns the learnings that lapsed, so the caller can say so rather than have advice disappear silently.

Source

pub fn confirm(&mut self, id: &LearningId, at: Timestamp) -> bool

Marks a learning permanent, as a human confirming what they have read.

The ordinary path to State::Confirmed is rediscovery; this is the shortcut for an operator who already knows the insight is right and does not want to wait for the factory to work it out twice more.

Source

pub fn reject(&mut self, id: &LearningId, at: Timestamp) -> bool

Refuses a learning for good.

This is the revocation path, and the reason applying immediately is defensible: when a learning turns out to be wrong there is one place to go and one thing to press.

Trait Implementations§

Source§

impl Clone for Learnings

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Learnings

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for Learnings

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V