pub struct ProjectConfiguration {
pub name: String,
pub description: Option<String>,
pub status: Option<String>,
pub lead: Option<String>,
pub start_date: Option<String>,
pub due_date: Option<String>,
}Expand description
A project record ([projects.<project-id>] in tix.toml).
The stable ProjectId lives as the map key; name is a mutable display
label and is not the identity (C-002). The section is omitted entirely when
there are no projects, so a legacy tix.toml is byte-untouched (C-001).
status is project metadata and is deliberately a free-form string: it is
not the issue’s board column, and workflow-category semantics belong to
source issue #183, so this section introduces no global category model (C-007).
lead is an identity string in the same shape the existing assignee
field tolerates (bare handle or Name <email>); it is not a user account, a
directory entry, or a team membership (C-007).
Fields§
§name: StringDisplay label. Required and unique within the registry, so interactive selection is unambiguous — but never the identity, which is the map key.
description: Option<String>Optional long-form context.
status: Option<String>Optional project status (free-form; not a board column, not a category).
lead: Option<String>Optional lead identity string; no lookup, no user-identity concept.
start_date: Option<String>Optional start date (YYYY-MM-DD).
due_date: Option<String>Optional due date (YYYY-MM-DD); must be >= start_date.
Trait Implementations§
Source§impl Clone for ProjectConfiguration
impl Clone for ProjectConfiguration
Source§impl Debug for ProjectConfiguration
impl Debug for ProjectConfiguration
Source§impl Default for ProjectConfiguration
impl Default for ProjectConfiguration
Source§impl<'de> Deserialize<'de> for ProjectConfigurationwhere
ProjectConfiguration: Default,
impl<'de> Deserialize<'de> for ProjectConfigurationwhere
ProjectConfiguration: Default,
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>,
impl Eq for ProjectConfiguration
Source§impl PartialEq for ProjectConfiguration
impl PartialEq for ProjectConfiguration
Source§impl Serialize for ProjectConfiguration
impl Serialize for ProjectConfiguration
impl StructuralPartialEq for ProjectConfiguration
Auto Trait Implementations§
impl Freeze for ProjectConfiguration
impl RefUnwindSafe for ProjectConfiguration
impl Send for ProjectConfiguration
impl Sync for ProjectConfiguration
impl Unpin for ProjectConfiguration
impl UnsafeUnpin for ProjectConfiguration
impl UnwindSafe for ProjectConfiguration
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> 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§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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> ⓘ
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> ⓘ
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