pub struct ContentMetadata {
pub content_type: ContentTypeId,
pub title: String,
pub description: Option<String>,
pub size: usize,
pub row_count: Option<usize>,
pub schema: Option<ContentSchema>,
pub source: Option<String>,
pub custom: HashMap<String, Value>,
}Expand description
Metadata associated with serveable content
Fields§
§content_type: ContentTypeIdContent type identifier
title: StringHuman-readable title
description: Option<String>Optional description
size: usizeContent size in bytes
row_count: Option<usize>Number of rows (for tabular data)
schema: Option<ContentSchema>Content schema (if applicable)
source: Option<String>Source information (URL, file path, or “clipboard”)
custom: HashMap<String, Value>Additional custom metadata
Implementations§
Source§impl ContentMetadata
impl ContentMetadata
Sourcepub fn new(
content_type: ContentTypeId,
title: impl Into<String>,
size: usize,
) -> Self
pub fn new( content_type: ContentTypeId, title: impl Into<String>, size: usize, ) -> Self
Create new metadata with required fields
Sourcepub fn with_description(self, description: impl Into<String>) -> Self
pub fn with_description(self, description: impl Into<String>) -> Self
Set description
Sourcepub fn with_row_count(self, count: usize) -> Self
pub fn with_row_count(self, count: usize) -> Self
Set row count
Sourcepub fn with_schema(self, schema: ContentSchema) -> Self
pub fn with_schema(self, schema: ContentSchema) -> Self
Set schema
Sourcepub fn with_source(self, source: impl Into<String>) -> Self
pub fn with_source(self, source: impl Into<String>) -> Self
Set source
Sourcepub fn with_custom(self, key: impl Into<String>, value: Value) -> Self
pub fn with_custom(self, key: impl Into<String>, value: Value) -> Self
Add custom metadata
Trait Implementations§
Source§impl Clone for ContentMetadata
impl Clone for ContentMetadata
Source§fn clone(&self) -> ContentMetadata
fn clone(&self) -> ContentMetadata
Returns a duplicate of the value. Read more
1.0.0 · 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 ContentMetadata
impl Debug for ContentMetadata
Source§impl<'de> Deserialize<'de> for ContentMetadata
impl<'de> Deserialize<'de> for ContentMetadata
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
Auto Trait Implementations§
impl Freeze for ContentMetadata
impl RefUnwindSafe for ContentMetadata
impl Send for ContentMetadata
impl Sync for ContentMetadata
impl Unpin for ContentMetadata
impl UnsafeUnpin for ContentMetadata
impl UnwindSafe for ContentMetadata
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreCreates a shared type from an unshared type.