/* * Copyright (C) 2023 The Trinitrix Project * * This file is part of the Trixy crate for Trinitrix. * * Trixy is free software: you can redistribute it and/or modify * it under the terms of the Lesser GNU General Public License as * published by the Free Software Foundation, either version 3 of * the License, or (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * and the Lesser GNU General Public License along with this program. * If not, see . */ use proc_macro2::TokenStream as TokenStream2; use quote::quote; use crate::{ generate::lua_wrapper::{ lua_functions_to_globals::generate_add_lua_functions_to_globals, rust_wrapper_functions::generate_rust_wrapper_functions, }, DataCommandEnum, }; mod lua_functions_to_globals; mod rust_wrapper_functions; pub fn lua_wrapper(input: &DataCommandEnum) -> TokenStream2 { let add_lua_functions_to_globals = generate_add_lua_functions_to_globals(input); let rust_wrapper_functions = generate_rust_wrapper_functions(None, input); quote! { #add_lua_functions_to_globals #rust_wrapper_functions } }