[Date Prev][Date Next][Thread Prev][Thread Next]
[Date Index]
[Thread Index]
- Subject: Re: Renaming Lua modules (was Re: Modules with standalone main program)
- From: Sean Conner <sean@...>
- Date: Sun, 25 Feb 2018 20:58:30 -0500
It was thus said that the Great Soni They/Them L. once stated:
> On 2018-02-25 04:51 PM, Sean Conner wrote:
>
> Are there cases of static linking where you can't just change the symbol
> names?
Well, you can change the name in the source code (more portable, probably
the "easiest" way). Changing the name after you have object code is ... I
don't know. If you can, it's most likely very system dependent.
> > It does appear that Lua 5.3 also passes in the path (as the second Lua
> >parameter) to each searcher, so either the documenation is wrong, or it's
> >an undocumted feature.
>
> $ lua
> Lua 5.3.4 Copyright (C) 1994-2017 Lua.org, PUC-Rio
> > package.preload.hello = print
> > require "hello"
> hello nil
And if you read the entire section you would see this behavior documented.
I didn't quote the entire section (I apologize if I gave the impression I
did).
> true
> > io.open("world.lua", "w"):write("print (...)"):close()
> true
> > require "world"
> world ./world.lua
> true
> > -- can't test a C module here but w/e, what happens if you print the
> C stack from a C module?
I'll assume you mean the Lua stack from a C lua function. So here you go:
#include <stdio.h>
#include <lua.h>
#include <lauxlib.h>
int luaopen_cmod(lua_State *L)
{
int max = lua_gettop(L);
int i;
for (i = 1 ; i <= max ; i++)
{
char const *name;
char const *type;
int ri;
lua_getglobal(L,"tostring");
lua_pushvalue(L,i);
lua_call(L,1,1);
name = lua_tostring(L,-1);
type = luaL_typename(L,i);
ri = i - max - 1;
printf("Stack: %d %d - %s %s\n",i,ri,type,name);
lua_pop(L,1);
}
lua_pushboolean(L,1);
return 1;
}
[spc]lucy:/tmp>lua-53
Lua 5.3.4 Copyright (C) 1994-2017 Lua.org, PUC-Rio
> require "cmod"
Stack: 1 -2 - string cmod
Stack: 2 -1 - string ./cmod.so
true
>
Answers your question?
-spc
- References:
- Re: Modules with standalone main program, albertmcchan
- Re: Modules with standalone main program, Dirk Laurie
- Re: Modules with standalone main program, albertmcchan
- Re: Modules with standalone main program, Soni "They/Them" L.
- Renaming Lua modules (was Re: Modules with standalone main program), Sean Conner
- Re: Renaming Lua modules (was Re: Modules with standalone main program), Soni "They/Them" L.
- Re: Renaming Lua modules (was Re: Modules with standalone main program), Sean Conner
- Re: Renaming Lua modules (was Re: Modules with standalone main program), Soni "They/Them" L.
- Re: Renaming Lua modules (was Re: Modules with standalone main program), Sean Conner
- Re: Renaming Lua modules (was Re: Modules with standalone main program), Soni "They/Them" L.