pub struct TemplateSchema {
pub name: String,
pub display_name: String,
pub description: String,
pub version: String,
pub authors: Vec<String>,
pub category: TemplateCategory,
pub metadata_schema: Value,
pub required_files: Vec<String>,
pub options: Vec<TemplateOption>,
}Expand description
A template definition combining visual styling and metadata schema.
Fields§
§name: StringTemplate identifier.
display_name: StringHuman-readable display name.
description: StringTemplate description.
version: StringVersion string.
Template author(s).
category: TemplateCategoryTarget use case (article, book, report, etc.).
metadata_schema: ValueMetadata schema definition.
required_files: Vec<String>Required files (main.typ, etc.).
options: Vec<TemplateOption>Optional configuration options.
Implementations§
Source§impl TemplateSchema
impl TemplateSchema
Sourcepub fn from_directory(path: impl AsRef<Path>) -> Result<Self>
pub fn from_directory(path: impl AsRef<Path>) -> Result<Self>
Load a template schema from a directory.
Expects a template.toml or template.json file.
§Errors
Returns an error if the template cannot be loaded.
Sourcepub fn metadata_validator(&self) -> Result<Schema>
pub fn metadata_validator(&self) -> Result<Schema>
Get a validator for this template’s metadata schema.
§Errors
Returns an error if the schema is invalid.
Sourcepub fn requires_file(&self, filename: &str) -> bool
pub fn requires_file(&self, filename: &str) -> bool
Check if a file is required by this template.
Trait Implementations§
Source§impl Clone for TemplateSchema
impl Clone for TemplateSchema
Source§fn clone(&self) -> TemplateSchema
fn clone(&self) -> TemplateSchema
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 TemplateSchema
impl Debug for TemplateSchema
Source§impl<'de> Deserialize<'de> for TemplateSchema
impl<'de> Deserialize<'de> for TemplateSchema
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 TemplateSchema
impl RefUnwindSafe for TemplateSchema
impl Send for TemplateSchema
impl Sync for TemplateSchema
impl Unpin for TemplateSchema
impl UnsafeUnpin for TemplateSchema
impl UnwindSafe for TemplateSchema
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