pub struct Database { /* private fields */ }Implementations§
Source§impl Database
impl Database
pub fn open(path: &Path) -> Result<Self>
Sourcepub fn transaction<T, F>(&self, f: F) -> Result<T>
pub fn transaction<T, F>(&self, f: F) -> Result<T>
Execute a closure within a database transaction. If the closure returns Ok, the transaction is committed. If the closure returns Err, the transaction is rolled back.
pub fn create_issue( &self, title: &str, description: Option<&str>, priority: &str, ) -> Result<i64>
pub fn create_subissue( &self, parent_id: i64, title: &str, description: Option<&str>, priority: &str, ) -> Result<i64>
pub fn get_subissues(&self, parent_id: i64) -> Result<Vec<Issue>>
pub fn get_issue(&self, id: i64) -> Result<Option<Issue>>
Sourcepub fn require_issue(&self, id: i64) -> Result<Issue>
pub fn require_issue(&self, id: i64) -> Result<Issue>
Get an issue by ID, returning an error if not found. Use this instead of get_issue when you need the issue to exist.
pub fn list_issues( &self, status_filter: Option<&str>, label_filter: Option<&str>, priority_filter: Option<&str>, ) -> Result<Vec<Issue>>
pub fn update_issue( &self, id: i64, title: Option<&str>, description: Option<&str>, priority: Option<&str>, ) -> Result<bool>
pub fn close_issue(&self, id: i64) -> Result<bool>
pub fn reopen_issue(&self, id: i64) -> Result<bool>
pub fn delete_issue(&self, id: i64) -> Result<bool>
pub fn add_label(&self, issue_id: i64, label: &str) -> Result<bool>
pub fn remove_label(&self, issue_id: i64, label: &str) -> Result<bool>
pub fn get_labels(&self, issue_id: i64) -> Result<Vec<String>>
pub fn add_comment(&self, issue_id: i64, content: &str) -> Result<i64>
pub fn get_comments(&self, issue_id: i64) -> Result<Vec<Comment>>
pub fn add_dependency(&self, blocked_id: i64, blocker_id: i64) -> Result<bool>
pub fn remove_dependency( &self, blocked_id: i64, blocker_id: i64, ) -> Result<bool>
pub fn get_blockers(&self, issue_id: i64) -> Result<Vec<i64>>
pub fn get_blocking(&self, issue_id: i64) -> Result<Vec<i64>>
pub fn list_blocked_issues(&self) -> Result<Vec<Issue>>
pub fn list_ready_issues(&self) -> Result<Vec<Issue>>
pub fn start_session(&self) -> Result<i64>
pub fn end_session(&self, id: i64, notes: Option<&str>) -> Result<bool>
pub fn get_current_session(&self) -> Result<Option<Session>>
pub fn get_last_session(&self) -> Result<Option<Session>>
pub fn set_session_issue(&self, session_id: i64, issue_id: i64) -> Result<bool>
pub fn set_session_action(&self, session_id: i64, action: &str) -> Result<bool>
pub fn start_timer(&self, issue_id: i64) -> Result<i64>
pub fn stop_timer(&self, issue_id: i64) -> Result<bool>
pub fn get_active_timer(&self) -> Result<Option<(i64, DateTime<Utc>)>>
pub fn get_total_time(&self, issue_id: i64) -> Result<i64>
Sourcepub fn search_issues(&self, query: &str) -> Result<Vec<Issue>>
pub fn search_issues(&self, query: &str) -> Result<Vec<Issue>>
Search issues by query string across titles, descriptions, and comments
pub fn add_relation(&self, issue_id_1: i64, issue_id_2: i64) -> Result<bool>
pub fn remove_relation(&self, issue_id_1: i64, issue_id_2: i64) -> Result<bool>
pub fn update_parent(&self, id: i64, parent_id: Option<i64>) -> Result<bool>
pub fn create_milestone( &self, name: &str, description: Option<&str>, ) -> Result<i64>
pub fn get_milestone(&self, id: i64) -> Result<Option<Milestone>>
pub fn list_milestones(&self, status: Option<&str>) -> Result<Vec<Milestone>>
pub fn add_issue_to_milestone( &self, milestone_id: i64, issue_id: i64, ) -> Result<bool>
pub fn remove_issue_from_milestone( &self, milestone_id: i64, issue_id: i64, ) -> Result<bool>
pub fn get_milestone_issues(&self, milestone_id: i64) -> Result<Vec<Issue>>
pub fn close_milestone(&self, id: i64) -> Result<bool>
pub fn delete_milestone(&self, id: i64) -> Result<bool>
pub fn get_issue_milestone(&self, issue_id: i64) -> Result<Option<Milestone>>
pub fn archive_issue(&self, id: i64) -> Result<bool>
pub fn unarchive_issue(&self, id: i64) -> Result<bool>
pub fn list_archived_issues(&self) -> Result<Vec<Issue>>
pub fn archive_older_than(&self, days: i64) -> Result<i32>
Auto Trait Implementations§
impl !Freeze for Database
impl !RefUnwindSafe for Database
impl Send for Database
impl !Sync for Database
impl Unpin for Database
impl UnsafeUnpin for Database
impl !UnwindSafe for Database
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