pub struct ResearchCitationV1 {
pub schema: String,
pub citation_id: String,
pub project_id: String,
pub run_id: String,
pub claim_id: String,
pub source_digest: String,
pub source_span_digest: String,
pub locator: Option<String>,
pub observed_at_ms: u64,
pub citation_digest: String,
}Expand description
One bounded citation from a claim to a source span or evidence fact.
Citations carry digests only. Hosts retain source text and locators behind those digests and optional bounded locator text for UI routing.
Fields§
§schema: String§citation_id: String§project_id: String§run_id: String§claim_id: String§source_digest: String§source_span_digest: String§locator: Option<String>§observed_at_ms: u64§citation_digest: StringImplementations§
Source§impl ResearchCitationV1
impl ResearchCitationV1
pub fn new( citation_id: impl Into<String>, project_id: impl Into<String>, run_id: impl Into<String>, claim_id: impl Into<String>, source_digest: impl Into<String>, source_span_digest: impl Into<String>, locator: Option<String>, observed_at_ms: u64, ) -> Result<Self, ResearchContractError>
pub fn validate_for_run( &self, run: &ResearchRunV1, ) -> Result<(), ResearchContractError>
pub fn validate(&self) -> Result<(), ResearchContractError>
pub fn from_slice(bytes: &[u8]) -> Result<Self, ResearchContractError>
pub fn to_vec(&self) -> Result<Vec<u8>, ResearchContractError>
Trait Implementations§
Source§impl Clone for ResearchCitationV1
impl Clone for ResearchCitationV1
Source§fn clone(&self) -> ResearchCitationV1
fn clone(&self) -> ResearchCitationV1
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ResearchCitationV1
impl Debug for ResearchCitationV1
Source§impl<'de> Deserialize<'de> for ResearchCitationV1
impl<'de> Deserialize<'de> for ResearchCitationV1
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>,
Deserialize this value from the given Serde deserializer. Read more
impl Eq for ResearchCitationV1
Source§impl PartialEq for ResearchCitationV1
impl PartialEq for ResearchCitationV1
Source§impl Serialize for ResearchCitationV1
impl Serialize for ResearchCitationV1
impl StructuralPartialEq for ResearchCitationV1
Auto Trait Implementations§
impl Freeze for ResearchCitationV1
impl RefUnwindSafe for ResearchCitationV1
impl Send for ResearchCitationV1
impl Sync for ResearchCitationV1
impl Unpin for ResearchCitationV1
impl UnsafeUnpin for ResearchCitationV1
impl UnwindSafe for ResearchCitationV1
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
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