extern crate proc_macro; use dhall_core::context::Context; use dhall_core::*; use proc_macro2::Literal; use proc_macro2::TokenStream; use quote::quote; #[proc_macro] pub fn dhall_expr(input: proc_macro::TokenStream) -> proc_macro::TokenStream { let input_str = input.to_string(); let expr: Box> = parser::parse_expr(&input_str).unwrap(); let no_import = |_: &Import| -> X { panic!("Don't use import in dhall!()") }; let expr = expr.map_embed(&no_import); let output = dhall_to_tokenstream::