Macro fungi_lang::fgi_nametm [] [src]

macro_rules! fgi_nametm {
    { fromast $ast:expr } => { ... };
    { [$($nmtm:tt)+] } => { ... };
    { @$($nm:tt)+ } => { ... };
    { # $var:ident : $sort:tt . $($body:tt)+ } => { ... };
    { [$($nmfn:tt)+] $par:tt } => { ... };
    { [$($nmfn:tt)+] $par:tt $($pars:tt)+ } => { ... };
    { $var:ident } => { ... };
    { $($nmtms:tt)+ } => { ... };
    { $($any:tt)* } => { ... };
}

Parser for Name Terms

M,N ::=
    fromast ast_expr    (inject ast nodes)
    [N]                 (parens)
    #a:g.M              (abstraction)
    [M] N ...           (curried application)
    a                   (Variable)
    M, N, ...           (extended bin)
    n                   (literal Name)