Macro fungi_lang::fgi_nametm
[−]
[src]
macro_rules! fgi_nametm { { fromast $ast:expr } => { ... }; { ^ $ast:expr } => { ... }; { [$($nmtm:tt)+] } => { ... }; { @@ } => { ... }; { @$nm1:tt * @$nm2:tt } => { ... }; { ~ $x:ident * $m:tt } => { ... }; { @$nm1:tt * $m:tt } => { ... }; { @$n:tt * $m:tt } => { ... }; { @$($nm:tt)+ } => { ... }; { # $var:ident : $sort:tt . $($body:tt)+ } => { ... }; { [$($nmfn:tt)+] $par:tt } => { ... }; { [$($nmfn:tt)+] $par:tt $($pars:tt)+ } => { ... }; { $var:ident } => { ... }; { ~ $var:ident } => { ... }; { $($nmtms:tt)+ } => { ... }; { $($any:tt)* } => { ... }; }
Parser for Name Terms
M,N ::=
fromast ast_expr (inject ast nodes)
[N] (parens)
@@ (write scope; sort Nm -> Nm)
@n (unique name constant for number n)
#a:g.M (abstraction)
[M] N ... (curried application)
a (Variable)
~x (Value variable)
M, N, ... (extended bin) <<--- DEPRECATED: Use `N * M * ...` instead
n (literal Name)