Trait StaticProcedureParser

Source
pub trait StaticProcedureParser<'nr> {
    type RetType;
    type RetTypeArg;
    type RetTypeInt;

    // Required methods
    fn parse(
        si: &'nr SchemeInit<'nr>,
        nodes: NodesReader<'nr>,
    ) -> StaticSchemeRes<Self::RetType>;
    fn parse_internal(
        si: &'nr SchemeInit<'nr>,
        nodes: NodesReader<'nr>,
        v: Self::RetTypeArg,
    ) -> StaticSchemeRes<Self::RetTypeInt>;
}
Expand description

A trait for the static scheme parser. Shoudl be implemented for each struct which is read from the static file.

Required Associated Types§

Source

type RetType

A return type for the parse function.

Source

type RetTypeArg

An argument for the helper function.

Source

type RetTypeInt

A return type for the parse_internal function.

Required Methods§

Source

fn parse( si: &'nr SchemeInit<'nr>, nodes: NodesReader<'nr>, ) -> StaticSchemeRes<Self::RetType>

A main entry function.

§Arguements
  • si - SchemeInit an initialization struct of the static environment.

  • nodes - NodesReader a reader of the nodes at specific state.

§Returns

A Result as type StaticSchemeRes is returned with the pre defined Self::RetType.

Source

fn parse_internal( si: &'nr SchemeInit<'nr>, nodes: NodesReader<'nr>, v: Self::RetTypeArg, ) -> StaticSchemeRes<Self::RetTypeInt>

An additional function for the recursion.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'nr> StaticProcedureParser<'nr> for EnumOpt

Source§

impl<'nr> StaticProcedureParser<'nr> for Enumerator

Source§

impl<'nr> StaticProcedureParser<'nr> for FieldDecl

Source§

impl<'nr> StaticProcedureParser<'nr> for Structure

Source§

impl<'nr> StaticProcedureParser<'nr> for SchemeInclude

Source§

impl<'nr> StaticProcedureParser<'nr> for SchemeUse

Source§

impl<'nr> StaticProcedureParser<'nr> for SchemeVersion

Source§

impl<'nr> StaticProcedureParser<'nr> for Argument

Source§

impl<'nr> StaticProcedureParser<'nr> for Define

Source§

impl<'nr> StaticProcedureParser<'nr> for DefineEnum

Source§

impl<'nr> StaticProcedureParser<'nr> for Procedure

Source§

impl<'nr> StaticProcedureParser<'nr> for Serializator