Trait rune::Resolve[][src]

pub trait Resolve<'a>: ResolveOwned {
    type Output: 'a;
    fn resolve(
        &self,
        storage: &Storage,
        source: &'a Source
    ) -> Result<Self::Output, ResolveError>; }

A type that can be resolved to an internal value based on a source.

Associated Types

type Output: 'a[src]

The output type being resolved into.

Loading content...

Required methods

fn resolve(
    &self,
    storage: &Storage,
    source: &'a Source
) -> Result<Self::Output, ResolveError>
[src]

Resolve the value from parsed AST.

Loading content...

Implementors

impl<'a> Resolve<'a> for ObjectKey[src]

type Output = Cow<'a, str>

impl<'a> Resolve<'a> for Ident[src]

type Output = Cow<'a, str>

impl<'a> Resolve<'a> for Label[src]

type Output = Cow<'a, str>

impl<'a> Resolve<'a> for LitByte[src]

type Output = u8

impl<'a> Resolve<'a> for LitByteStr[src]

type Output = Cow<'a, [u8]>

impl<'a> Resolve<'a> for LitChar[src]

type Output = char

impl<'a> Resolve<'a> for LitNumber[src]

type Output = Number

impl<'a> Resolve<'a> for LitStr[src]

type Output = Cow<'a, str>

impl<'a> Resolve<'a> for Path[src]

Resolve implementation for path which “stringifies” it.

type Output = Box<str>

Loading content...