pub struct Statement { /* private fields */ }Expand description
Structure showing evidence of any sort of experience or event to be tracked in xAPI as a Learning Record.
A set of several Statements, each representing an event in time, might be used to track complete details about a learning experience.
Implementations§
Source§impl Statement
impl Statement
Sourcepub fn from_json_obj(map: Map<String, Value>) -> Result<Self, DataError>
pub fn from_json_obj(map: Map<String, Value>) -> Result<Self, DataError>
Construct and validate a Statement from a JSON map.
Sourcepub fn builder() -> StatementBuilder
pub fn builder() -> StatementBuilder
Return a Statement Builder.
Sourcepub fn id(&self) -> Option<&Uuid>
pub fn id(&self) -> Option<&Uuid>
Return the id field (a UUID) if set; None otherwise. It’s assigned by
the LRS if not already set by the LRP.
Sourcepub fn is_verb_voided(&self) -> bool
pub fn is_verb_voided(&self) -> bool
Return TRUE if verb is voided; FALSE otherwise.
Sourcepub fn object(&self) -> &StatementObject
pub fn object(&self) -> &StatementObject
Sourcepub fn voided_target(&self) -> Option<Uuid>
pub fn voided_target(&self) -> Option<Uuid>
Return the UUID of the (target) Statement to be voided by this one iff (a) the verb is voided, and (b) the object is a StatementRef.
Return None otherwise.
Sourcepub fn context(&self) -> Option<&Context>
pub fn context(&self) -> Option<&Context>
Return the Context of this instance if set; None otherwise.
Sourcepub fn timestamp(&self) -> Option<&DateTime<Utc>>
pub fn timestamp(&self) -> Option<&DateTime<Utc>>
Return the timestamp of when the events described within this Statement
occurred as a chrono::DateTime if set; None otherwise.
It’s set by the LRS if not provided.
Sourcepub fn timestamp_internal(&self) -> Option<&MyTimestamp>
pub fn timestamp_internal(&self) -> Option<&MyTimestamp>
Return the timestamp of when the events described within this Statement
occurred if set; None otherwise.
It’s set by the LRS if not provided.
Sourcepub fn stored(&self) -> Option<&DateTime<Utc>>
pub fn stored(&self) -> Option<&DateTime<Utc>>
Return the timestamp of when this Statement was persisted if set;
None otherwise.
Sourcepub fn set_stored(&mut self, val: DateTime<Utc>)
pub fn set_stored(&mut self, val: DateTime<Utc>)
Set the stored field of this to the given value.
Setter for the authority field of this w/o checking the given
Actor’s validity leaving the caller that responsibility.
Sourcepub fn version(&self) -> Option<&MyVersion>
pub fn version(&self) -> Option<&MyVersion>
Return the Statement’s associated xAPI version if set; None otherwise.
When set, it’s expected to be formatted according to Semantic Versioning 1.0.0.
Sourcepub fn attachments(&self) -> &[Attachment]
pub fn attachments(&self) -> &[Attachment]
Return a reference to the potentially empty array of attachments.
Sourcepub fn attachments_mut(&mut self) -> &mut [Attachment]
pub fn attachments_mut(&mut self) -> &mut [Attachment]
Return a mutable reference to the potentially empty array of attachments.
Sourcepub fn set_attachments(&mut self, attachments: Vec<Attachment>)
pub fn set_attachments(&mut self, attachments: Vec<Attachment>)
Set (as in replace) attachments field of this instance to the given
value.
Sourcepub fn equivalent(&self, that: &Statement) -> bool
pub fn equivalent(&self, that: &Statement) -> bool
Return TRUE if this is Equivalent to that and FALSE otherwise.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Statement
impl<'de> Deserialize<'de> for Statement
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Fingerprint for Statement
impl Fingerprint for Statement
Source§impl TryFrom<StatementType> for Statement
impl TryFrom<StatementType> for Statement
Source§impl Validate for Statement
impl Validate for Statement
Source§fn validate(&self) -> Vec<ValidationError>
fn validate(&self) -> Vec<ValidationError>
IMPORTANT - xAPI mandates that… The LRS shall specifically not consider any of the following for equivalence, nor is it responsible for preservation as described above for the following properties/cases:
- Case (upper vs. lower)
- Id
- Order of any Group Members
- Authority
- Stored
- Timestamp
- Version
- Any attachments
- Any referenced Activity Definitions
Source§fn is_valid(&self) -> bool
fn is_valid(&self) -> bool
Source§fn check_validity(&self) -> Result<(), ValidationError>
fn check_validity(&self) -> Result<(), ValidationError>
impl StructuralPartialEq for Statement
Auto Trait Implementations§
impl Freeze for Statement
impl RefUnwindSafe for Statement
impl Send for Statement
impl Sync for Statement
impl Unpin for Statement
impl UnsafeUnpin for Statement
impl UnwindSafe for Statement
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
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> ToStringFallible for Twhere
T: Display,
impl<T> ToStringFallible for Twhere
T: Display,
Source§fn try_to_string(&self) -> Result<String, TryReserveError>
fn try_to_string(&self) -> Result<String, TryReserveError>
ToString::to_string, but without panic on OOM.