use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum RunStatus {
#[serde(rename = "queued")]
Queued,
#[serde(rename = "in_progress")]
InProgress,
#[serde(rename = "requires_action")]
RequiresAction,
#[serde(rename = "cancelling")]
Cancelling,
#[serde(rename = "cancelled")]
Cancelled,
#[serde(rename = "failed")]
Failed,
#[serde(rename = "completed")]
Completed,
#[serde(rename = "incomplete")]
Incomplete,
#[serde(rename = "expired")]
Expired,
}
impl std::fmt::Display for RunStatus {
fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
match self {
Self::Queued => write!(f, "queued"),
Self::InProgress => write!(f, "in_progress"),
Self::RequiresAction => write!(f, "requires_action"),
Self::Cancelling => write!(f, "cancelling"),
Self::Cancelled => write!(f, "cancelled"),
Self::Failed => write!(f, "failed"),
Self::Completed => write!(f, "completed"),
Self::Incomplete => write!(f, "incomplete"),
Self::Expired => write!(f, "expired"),
}
}
}
impl Default for RunStatus {
fn default() -> RunStatus {
Self::Queued
}
}