use crate::{
category::Bias,
gloss::{GlossFlags, GlossStatic},
prelude::{token::Token, IntoToken},
romanize::{
flags::FromTokenFlags,
stream::{ParseError, TokenStream},
traits::FromTokens,
},
};
#[derive(Clone, Copy, Debug, Hash, PartialEq, Eq, PartialOrd, Ord)]
pub struct BiasAdjunct {
pub bias: Bias,
}
impl GlossStatic for BiasAdjunct {
fn gloss_static(&self, flags: GlossFlags) -> &'static str {
self.bias.gloss_static(flags)
}
}
impl FromTokens for BiasAdjunct {
fn parse_volatile(stream: &mut TokenStream, flags: FromTokenFlags) -> Result<Self, ParseError> {
Ok(BiasAdjunct {
bias: stream.parse(flags)?,
})
}
}
impl IntoToken for BiasAdjunct {
fn into_token(self) -> Token {
self.bias.into_token()
}
}