{{
    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.
#[cfg_attr(feature = "nightly", 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 { id, season } of seasons) {
        const name = season.replace(' ', '_');
}}
    {{= name }} = {{= id }},
{{
    }
}}
}