This commit is contained in:
Andy Weidenbaum
2021-02-04 11:09:05 +11:00
commit 187c5f55ea
5 changed files with 84 additions and 0 deletions

40
README.md Normal file
View File

@@ -0,0 +1,40 @@
# rlua-searcher
`require` Lua modules by name
## Description
Encode a Lua module as a `HashMap` of Lua strings indexed by module
name. In an `rlua::Context`, pass the `HashMap` to `add_searcher()`,
and `require` the module.
## Synopsis
```rust
use rlua_searcher::AddSearcher;
fn main() {
let lume = read_lume_to_string();
let name = "lume";
let map = HashMap::new<String, String>();
map.insert(name, lume);
let lua = Lua::new;
let hello = lua.context::<_, rlua::Result<_>>(|lua_ctx| {
lua_ctx.add_searcher(map)?;
Ok(lua_ctx.load(r#"require("lume")"#).eval()?)
}).unwrap();
// prints "hello lume"
println!("{}", hello);
}
fn read_lume_to_string() -> String {
r#"return "hello lume""#.to_string()
}
```
## License
[MIT](LICENSE)