edjr 0.1.1

Elite Dangerous Journal Reader
Documentation
use serde::Deserialize;

#[derive(Debug, Deserialize)]
pub enum FactionState {
    Boom,
    Bust,
    Election,
    Expansion,
    Investment,
    None,
    #[serde(other)]
    Unknown,
}

#[derive(Debug, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct Faction {
    name: String,
    faction_state: Option<FactionState>,
}

#[derive(Debug, Deserialize)]
#[serde(rename_all = "lowercase")]
pub enum FactionWarStatus {
    Active,
    Pending,
    #[serde(other)]
    None,
}

#[derive(Debug, Deserialize)]
#[serde(rename_all = "lowercase")]
pub enum FactionWarType {
    War,
    CivilWar,
    Election,
    #[serde(other)]
    None,
}

#[derive(Debug, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct FactionWarState {
    name: String,
    stake: String,
    won_days: u64,
}

#[derive(Debug, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct FactionConflict {
    faction_1: FactionWarState,
    faction_2: FactionWarState,
    status: FactionWarStatus,
    war_type: FactionWarType,
}