pub struct ProjectManifest {
pub project: ProjectMeta,
pub plugins: HashMap<String, PluginRequirement>,
}Expand description
Top-level project manifest parsed from .ta/project.toml.
Fields§
§project: ProjectMetaProject metadata.
plugins: HashMap<String, PluginRequirement>Plugin declarations keyed by plugin name.
Implementations§
Source§impl ProjectManifest
impl ProjectManifest
Sourcepub fn load(project_root: &Path) -> Result<Self, ManifestError>
pub fn load(project_root: &Path) -> Result<Self, ManifestError>
Load a project manifest from .ta/project.toml under the given root.
Sourcepub fn load_from(path: &Path) -> Result<Self, ManifestError>
pub fn load_from(path: &Path) -> Result<Self, ManifestError>
Load from an explicit path.
Sourcepub fn exists(project_root: &Path) -> bool
pub fn exists(project_root: &Path) -> bool
Check if a project manifest exists for the given root.
Sourcepub fn validate(&self) -> Result<(), ManifestError>
pub fn validate(&self) -> Result<(), ManifestError>
Validate all plugin declarations.
Sourcepub fn required_plugins(&self) -> Vec<&str>
pub fn required_plugins(&self) -> Vec<&str>
Return all required plugin names.
Trait Implementations§
Source§impl Clone for ProjectManifest
impl Clone for ProjectManifest
Source§fn clone(&self) -> ProjectManifest
fn clone(&self) -> ProjectManifest
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 ProjectManifest
impl Debug for ProjectManifest
Source§impl<'de> Deserialize<'de> for ProjectManifest
impl<'de> Deserialize<'de> for ProjectManifest
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 ProjectManifest
impl RefUnwindSafe for ProjectManifest
impl Send for ProjectManifest
impl Sync for ProjectManifest
impl Unpin for ProjectManifest
impl UnsafeUnpin for ProjectManifest
impl UnwindSafe for ProjectManifest
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