{{
    const dotUtils = require('./dotUtils.js');
    const seasons = require('./.seasons.json');
}}{{= dotUtils.preamble() }}

use serde_repr::{ Serialize_repr, Deserialize_repr };
use num_enum::{ IntoPrimitive, TryFromPrimitive };

/// League of Legends matchmaking seasons.
#[non_exhaustive]
#[derive(Debug, Copy, Clone)]
#[derive(Eq, PartialEq, Hash, PartialOrd, Ord)]
#[derive(Serialize_repr, Deserialize_repr)]
#[derive(IntoPrimitive, TryFromPrimitive)]
#[repr(u8)]
pub enum Season {
{{
    for (const e of seasons) {
        const desc = e['x-desc'] ? e['x-desc'].split('\n') : [];
}}
{{~ desc :line }}
    /// {{= line }}
{{~}}
    {{= e['x-name'] }} = {{= e['x-value'] }},
{{
    }
}}
}