pub trait TokenExt: ListingElement + Clone + Debug {
    fn estimated_duration(&self) -> Result<usize, AssemblerError>;
    fn unroll(&self, env: &Env) -> Option<Result<Vec<&Self>, AssemblerError>>;
    fn disassemble_data(&self) -> Result<Listing, String>;
    fn to_bytes_with_options(
        &self,
        option: &AssemblingOptions
    ) -> Result<Vec<u8>, AssemblerError>; fn number_of_bytes(&self) -> Result<usize, String> { ... } fn number_of_bytes_with_context(
        &self,
        table: &mut SymbolsTableCaseDependent
    ) -> Result<usize, String> { ... } fn to_bytes(&self) -> Result<Vec<u8>, AssemblerError> { ... } fn to_bytes_with_context(
        &self,
        table: &mut SymbolsTableCaseDependent
    ) -> Result<Vec<u8>, AssemblerError> { ... } fn is_valid(&self) -> bool { ... } }
Expand description

Needed methods for the Token defined in cpclib_tokens

Required Methods

Unroll the tokens when it represents a loop

Generate the listing of opcodes for directives that embed bytes

Provided Methods

Return the number of bytes of the token given the provided context

Dummy version that assemble without taking into account the context TODO find a way to not build a symbol table each time

Assemble the symbol taking into account some context, but never modify this context

Check if the token is valid. We consider a token vlaid if it is possible to assemble it

Implementors