mathtex-portable-engine-generated 0.2.0

Machine generated portable TeX engine core for mathtex, translated from the TeX, eTeX and XeTeX sources
Documentation
//! XeTeX engine functions, group `x`.
//! Generated by `cargo run -p mathtex-web2c-import --bin patch_engine`.

#![allow(dead_code, non_camel_case_types, non_snake_case, unused_assignments, unused_mut, unused_variables)]

use crate::runtime::*;

impl<'resources> PortableTexEngine<'resources> {

    pub(crate) unsafe fn xtoken(&mut self) -> EngineFlow<()> {
        while self.state.curcmd as i32 > 103 as i32 {
            (&mut *(self as *mut PortableTexEngine<'_>)).expand()?;
            (&mut *(self as *mut PortableTexEngine<'_>)).getnext()?;
        }
        if self.state.curcs == 0 as i32 {
            self.state.curtok = (self.state.curcmd as i64 * 2097152 as i64
                + self.state.curchr as i64) as halfword;
        } else {
            self.state.curtok = (33554431 as i64 + self.state.curcs as i64) as halfword;
        };
        Ok(())
    }
}