Skip to content

Commit a9604c4

Browse files
committed
Rename Luau's TextRequirer to FsRequirer
1 parent 81ae8e1 commit a9604c4

File tree

6 files changed

+15
-18
lines changed

6 files changed

+15
-18
lines changed

src/lib.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,7 +147,7 @@ pub use crate::debug::HookTriggers;
147147
pub use crate::{
148148
buffer::Buffer,
149149
chunk::{CompileConstant, Compiler},
150-
luau::{HeapDump, NavigateError, Require, TextRequirer},
150+
luau::{FsRequirer, HeapDump, NavigateError, Require},
151151
vector::Vector,
152152
};
153153

src/luau/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ use crate::traits::{FromLuaMulti, IntoLua};
1010
use crate::types::MaybeSend;
1111

1212
pub use heap_dump::HeapDump;
13-
pub use require::{NavigateError, Require, TextRequirer};
13+
pub use require::{FsRequirer, NavigateError, Require};
1414

1515
// Since Luau has some missing standard functions, we re-implement them here
1616

@@ -86,7 +86,7 @@ impl Lua {
8686
}
8787

8888
// Enable default `require` implementation
89-
let require = self.create_require_function(require::TextRequirer::new())?;
89+
let require = self.create_require_function(FsRequirer::new())?;
9090
self.globals().raw_set("require", require)?;
9191

9292
Ok(())

src/luau/require.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,7 @@ use crate::state::{Lua, callback_error_ext};
1212
use crate::table::Table;
1313
use crate::types::MaybeSend;
1414

15-
// TODO: Rename to FsRequirer
16-
pub use fs::TextRequirer;
15+
pub use fs::FsRequirer;
1716

1817
/// An error that can occur during navigation in the Luau `require-by-string` system.
1918
#[derive(Debug, Clone)]

src/luau/require/fs.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ use super::{NavigateError, Require};
1212

1313
/// The standard implementation of Luau `require-by-string` navigation.
1414
#[derive(Default, Debug)]
15-
pub struct TextRequirer {
15+
pub struct FsRequirer {
1616
/// An absolute path to the current Luau module (not mapped to a physical file)
1717
abs_path: PathBuf,
1818
/// A relative path to the current Luau module (not mapped to a physical file)
@@ -22,7 +22,7 @@ pub struct TextRequirer {
2222
resolved_path: Option<PathBuf>,
2323
}
2424

25-
impl TextRequirer {
25+
impl FsRequirer {
2626
/// The prefix used for chunk names in the require system.
2727
/// Only chunk names starting with this prefix are allowed to be used in `require`.
2828
const CHUNK_PREFIX: &str = "@";
@@ -36,7 +36,7 @@ impl TextRequirer {
3636
/// The filename for the Luau configuration file.
3737
const LUAU_CONFIG_FILENAME: &str = ".config.luau";
3838

39-
/// Creates a new `TextRequirer` instance.
39+
/// Creates a new `FsRequirer` instance.
4040
pub fn new() -> Self {
4141
Self::default()
4242
}
@@ -114,7 +114,7 @@ impl TextRequirer {
114114
}
115115
}
116116

117-
impl Require for TextRequirer {
117+
impl Require for FsRequirer {
118118
fn is_require_allowed(&self, chunk_name: &str) -> bool {
119119
chunk_name.starts_with(Self::CHUNK_PREFIX)
120120
}
@@ -231,7 +231,7 @@ impl Require for TextRequirer {
231231
mod tests {
232232
use std::path::Path;
233233

234-
use super::TextRequirer;
234+
use super::FsRequirer;
235235

236236
#[test]
237237
fn test_path_normalize() {
@@ -267,7 +267,7 @@ mod tests {
267267
// '..' disappears if path is absolute and component is non-erasable
268268
("/../", "/"),
269269
] {
270-
let path = TextRequirer::normalize_path(input.as_ref());
270+
let path = FsRequirer::normalize_path(input.as_ref());
271271
assert_eq!(
272272
&path,
273273
expected.as_ref() as &Path,

src/prelude.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,8 @@ pub use crate::HookTriggers as LuaHookTriggers;
2525
#[cfg(feature = "luau")]
2626
#[doc(no_inline)]
2727
pub use crate::{
28-
CompileConstant as LuaCompileConstant, Compiler as LuaCompiler, NavigateError as LuaNavigateError,
29-
Require as LuaRequire, TextRequirer as LuaTextRequirer, Vector as LuaVector,
28+
CompileConstant as LuaCompileConstant, Compiler as LuaCompiler, FsRequirer as LuaFsRequirer,
29+
NavigateError as LuaNavigateError, Require as LuaRequire, Vector as LuaVector,
3030
};
3131

3232
#[cfg(feature = "async")]

tests/luau/require.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use std::io::Result as IoResult;
22
use std::result::Result as StdResult;
33

4-
use mlua::{Error, FromLua, IntoLua, Lua, MultiValue, NavigateError, Require, Result, TextRequirer, Value};
4+
use mlua::{Error, FromLua, FsRequirer, IntoLua, Lua, MultiValue, NavigateError, Require, Result, Value};
55

66
fn run_require(lua: &Lua, path: impl IntoLua) -> Result<Value> {
77
lua.load(r#"return require(...)"#).call(path)
@@ -65,7 +65,7 @@ fn test_require_errors() {
6565
assert!((res.unwrap_err().to_string()).contains("@ is not a valid alias"));
6666

6767
// Test throwing mlua::Error
68-
struct MyRequire(TextRequirer);
68+
struct MyRequire(FsRequirer);
6969

7070
impl Require for MyRequire {
7171
fn is_require_allowed(&self, chunk_name: &str) -> bool {
@@ -109,9 +109,7 @@ fn test_require_errors() {
109109
}
110110
}
111111

112-
let require = lua
113-
.create_require_function(MyRequire(TextRequirer::new()))
114-
.unwrap();
112+
let require = lua.create_require_function(MyRequire(FsRequirer::new())).unwrap();
115113
lua.globals().set("require", require).unwrap();
116114
let res = lua.load(r#"return require('./a/relative/path')"#).exec();
117115
assert!((res.unwrap_err().to_string()).contains("test error"));

0 commit comments

Comments
 (0)