luaur-repl-cli 0.1.2

Interactive Luau REPL (Rust).
Documentation
use core::ffi::{c_char, c_void};
use luaur_code_gen::type_aliases::lua_state::lua_State;

use crate::functions::write::{luarequire_WriteResult, write};
use crate::records::repl_requirer::ReplRequirer;

pub unsafe fn get_chunkname(
    _L: *mut lua_State,
    ctx: *mut c_void,
    buffer: *mut c_char,
    buffer_size: usize,
    size_out: *mut usize,
) -> luarequire_WriteResult {
    let req = &*(ctx as *const ReplRequirer);
    let path = req.vfs.get_file_path();
    let chunkname = alloc::format!("@{}", path);

    write(
        &chunkname as *const alloc::string::String as *const c_void,
        buffer,
        buffer_size,
        size_out,
    )
}