derive default for CharClass/SecId
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
jake 2023-11-19 00:25:19 -07:00
parent 05d505836c
commit 552f7d5774
2 changed files with 6 additions and 14 deletions

View File

@ -689,6 +689,7 @@ fn pso_packet_data_enum<'a>(name: syn::Ident, repr_type: syn::Ident, variants: i
.clone()
.enumerate()
.map(|(i, variant)| {
let variant = &variant.ident;
quote! {
#i => #name::#variant,
}
@ -698,6 +699,7 @@ fn pso_packet_data_enum<'a>(name: syn::Ident, repr_type: syn::Ident, variants: i
let variant_to_value = variants
.enumerate()
.map(|(i, variant)| {
let variant = &variant.ident;
quote! {
#name::#variant => #repr_type::to_le_bytes(#i as #repr_type).to_vec(),
}

View File

@ -5,8 +5,9 @@ use serde::{Serialize, Deserialize};
#[repr(u8)]
#[derive(PSOPacketData, Debug, Copy, Clone, Hash, PartialEq, Eq, strum::Display, strum::EnumString, Serialize, Deserialize)]
#[derive(PSOPacketData, Default, Debug, Copy, Clone, Hash, PartialEq, Eq, strum::Display, strum::EnumString, Serialize, Deserialize)]
pub enum CharacterClass {
#[default]
HUmar,
HUnewearl,
HUcast,
@ -21,12 +22,6 @@ pub enum CharacterClass {
FOnewearl,
}
impl Default for CharacterClass {
fn default() -> CharacterClass {
CharacterClass::HUmar
}
}
// TODO: TryFrom
impl std::convert::From<u8> for CharacterClass {
fn from(f: u8) -> CharacterClass {
@ -96,8 +91,9 @@ impl CharacterClass {
#[repr(u8)]
#[derive(PSOPacketData, Debug, Copy, Clone, Hash, PartialEq, Eq, strum::Display, strum::EnumString, Serialize, Deserialize)]
#[derive(PSOPacketData, Default, Debug, Copy, Clone, Hash, PartialEq, Eq, strum::Display, strum::EnumString, Serialize, Deserialize)]
pub enum SectionID {
#[default]
Viridia,
Greenill,
Skyly,
@ -110,12 +106,6 @@ pub enum SectionID {
Whitill,
}
impl Default for SectionID {
fn default() -> SectionID {
SectionID::Viridia
}
}
// TODO: TryFrom
impl From<u8> for SectionID {
fn from(id: u8) -> SectionID {