Macro macro_lisp::lisp [] [src]

macro_rules! lisp {
    (false) => { ... };
    (true) => { ... };
    (self $(. $e:tt)* ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident < $($generic:ident),+ >
        (pub $( ($name:ident $typ:ty) )* )
        ( $( ($name2:ident $typ2:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident < $($generic:ident),+ >
        (pub $( ($name:ident $typ:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident < $($generic:ident),+ >
        ( $( ($name:ident $typ:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident
        (pub $( ($name:ident $typ:ty) )* )
        ( $( ($name2:ident $typ2:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident
        (pub $( ($name:ident $typ:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident
        ( $( ($name:ident $typ:ty) )* )
    ) => { ... };
    ( $(#[$m:meta])* defstruct $struct_name:ident) => { ... };
    (match $e:tt $( ( $pattern:pat $(| $pat2:pat)* => ( $($e2:tt)* ) ) )* ) => { ... };
    (with-input-from-file ($var:ident $path:tt)
        $( ( $($e2:tt)* ) )*
    ) => { ... };
    (with-input-from-mut-file ($var:ident $path:tt)
        $( ( $($e2:tt)* ) )*
    ) => { ... };
    (with-output-to-new-file ($var:ident $path:tt)
        $( ( $($e2:tt)* ) )*
    ) => { ... };
    (read $file:tt $s:ident) => { ... };
    (read-to-string $file:tt $s:ident) => { ... };
    (read-to-end $file:tt $s:ident) => { ... };
    (read-exact $file:tt $s:ident) => { ... };
    (bytes $readable:tt) => { ... };
    (chars $readable:tt) => { ... };
    (chain $readable:tt $next:tt) => { ... };
    (take $readable:tt $limit:tt) => { ... };
    (write $buffer:tt $e:tt) => { ... };
    (write-all $buffer:tt $e:tt) => { ... };
    (write-format $buffer:tt $fmt:tt) => { ... };
    (flush $writable:tt) => { ... };
    (seek $buffer:tt $e:tt) => { ... };
    (by-ref $object:tt) => { ... };
    (let ( $( ($var:ident $e:tt) )* )
        $( ( $($e2:tt)* ) )*
    ) => { ... };
    (progn $( ( $($e:tt)* ) )* ) => { ... };
    (break) => { ... };
    (continue) => { ... };
    (loop $( ( $($e:tt)* ) )* ) => { ... };
    (while $cond:tt $( ( $($e:tt)* ) )* ) => { ... };
    (while-let ( $pattern:pat = $($cond:tt)* ) $( ( $($e:tt)* ) )* ) => { ... };
    (dotimes ($var:ident $count:tt) $( ( $($e:tt)* ) )* ) => { ... };
    (do ( $( ($var:ident $init:tt $step:tt) )* )
        ($cond:tt $result:tt)
        $( ( $($e:tt)* ) )*
    ) => { ... };
    (doiter ($var:ident $( $iter:tt )* ) $( ( $($e:tt)* ) )* ) => { ... };
    (if ( $($cond:tt)* ) $e1:tt $e2:tt) => { ... };
    (if ( $($cond:tt)* ) $e:tt) => { ... };
    (if $cond:tt $e1:tt $e2:tt) => { ... };
    (if $cond:tt $e:tt) => { ... };
    (if-let ( $pattern:pat = $($cond:tt)* ) $e1:tt $e2:tt) => { ... };
    (if-let ( $pattern:pat = $($cond:tt)* ) $e:tt) => { ... };
    (when ( $($cond:tt)* ) $e:tt) => { ... };
    (when $cond:tt $e:tt) => { ... };
    (unless ( $($cond:tt)* ) $e:tt) => { ... };
    (unless $cond:tt $e:tt) => { ... };
    ( $(#[$m:meta])* extern-crate $sym:ident) => { ... };
    (use $sym:tt $(:: $sym2:tt)* ) => { ... };
    ( $(#[$m:meta])* module $sym:ident
        $( ( $($e:tt)* ))*
     ) => { ... };
    ( $(#[$m:meta])* pub module $sym:ident
        $( ( $($e:tt)* ))*
     ) => { ... };
    ( $(#[$m:meta])* defun $sym:ident ( $( ( $name:ident $typ:ty ) )* ) $return_type:tt
        $( ( $($e:tt)* ))*
    ) => { ... };
    ( $(#[$m:meta])* defun $sym:ident ( $( ( $name:ident $typ:ty ) )* )
        $( ( $($e:tt)* ))*
    ) => { ... };
    ( $(#[$m:meta])* pub defun $sym:ident ( $( ( $name:ident $typ:ty ) )* ) $return_type:tt
        $( ( $($e:tt)* ))*
    ) => { ... };
    ( $(#[$m:meta])* pub defun $sym:ident ( $( ( $name:ident $typ:ty ) )* )
        $( ( $($e:tt)* ))*
    ) => { ... };
    (defconstant ($var:ident $typ:ty) ( $($e:tt)+ ) ) => { ... };
    (defconstant ($var:ident $typ:ty) $e:expr) => { ... };
    (defconstant $var:ident ( $($e:tt)+ ) ) => { ... };
    (defconstant $var:ident $e:expr) => { ... };
    (defvar ($var:ident $typ:ty) ( $($e:tt)+ )) => { ... };
    (defvar ($var:ident $typ:ty) $e:expr) => { ... };
    (defvar $var:ident ( $($e: tt)+ )) => { ... };
    (defvar $var:ident $e:expr) => { ... };
    (setf $var:ident ( $($e: tt)+ ) ) => { ... };
    (setf $var:ident $e:expr) => { ... };
    (eq $x:tt $y:tt) => { ... };
    (== $x:tt $y:tt) => { ... };
    (!= $x:tt $y:tt) => { ... };
    (< $x:tt $y:tt) => { ... };
    (> $x:tt $y:tt) => { ... };
    (<= $x:tt $y:tt) => { ... };
    (>= $x:tt $y:tt) => { ... };
    (print $( $e:tt )+) => { ... };
    (println $( $e:tt )+) => { ... };
    (format $( $e:tt )+) => { ... };
    (format-args $( $e:tt )+) => { ... };
    (assert $e1:tt $e2:tt) => { ... };
    (assert-eq $e1:tt $e2:tt) => { ... };
    (debug-assert $e1:tt $e2:tt) => { ... };
    (debug-assert-eq $e1:tt $e2:tt) => { ... };
    (panic $($arg:tt)+ ) => { ... };
    (+ $x:tt $y:tt) => { ... };
    (- $x:tt $y:tt) => { ... };
    (* $x:tt $y:tt) => { ... };
    (/ $x:tt $y:tt) => { ... };
    (% $x:tt $y:tt) => { ... };
    (incf $var:ident) => { ... };
    (decf $var:ident) => { ... };
    (1+ $e:tt) => { ... };
    (1- $e:tt) => { ... };
    (! $e:tt) => { ... };
    (len $e:tt) => { ... };
    (tuple $($e:tt)* ) => { ... };
    (vec $($e:tt)* ) => { ... };
    (lambda move ( $( ( $name:ident $typ:ty ) )* )
        $( ( $($e:tt)* ))*
    ) => { ... };
    (lambda ( $( ( $name:ident $typ:ty ) )* )
        $( ( $($e:tt)* ))*
    ) => { ... };
    ((lambda ( ( $($name:ident $typ:ty)* ) ) $( ( $($e:tt)* ))* ) $($e2:tt)*) => { ... };
    (  $sym:ident $(:: $sym2:ident )+ $( $e:tt )* ) => { ... };
    (  $sym:ident . $( $sym2:ident ).+ $( $e:tt )* ) => { ... };
    ($sym:ident $( $e:tt )* ) => { ... };
    (rust $( $st:stmt )* ) => { ... };
    ($e:expr) => { ... };
}