Lua cpp expose
-
Examiner les modifications -
-
Télécharger -
Correctifs
-
Diff brut
Exposition to Lua runtime mechanism proposition.
The user has to create an object that is LuaScriptAbleObject
, make it inherit the CRTPLuaScriptObject
class and voila.
For example, a simple FooBar examples might be:
// Default sample exposer for lua scripts
script_class (SampleObject) {
LUA_SCRIPTABLE_CLASS(SampleObject)
SampleObject() noexcept { fprintf(stderr, "CREATE SampleObject\n"); }
~SampleObject() noexcept { fprintf(stderr, "DESTROY SampleObject\n"); }
static int foo(lua_State *L) noexcept
{
SampleObject *obj = CHECK(L, 1);
double bar = luaL_checknumber(L, 2);
return 0;
}
static constexpr inline auto metaMethods = { luaRegDefaultGC, LUA_DECL_CREATE(SampleObject) };
static constexpr inline auto methods = { LUA_DECL_METHOD(SampleObject, foo) };
};
A sample file for a script can be found at utils/lua/sample-spec.lua
, this is just a proposition.
Modification effectuée par Kubat
Rapports de requête de fusion
Comparer et
- version 3177648f00
- version 30b8bae846
- version 296f7e1179
- version 28b6ef9cf1
- version 27f08d1f09
- version 26e8e3883e
- version 25713e1ae3
- version 24aab633b3
- version 237f6c71bf
- version 22f8d83c23
- version 211886cd0c
- version 20f545edd4
- version 19e27b9807
- version 18c537cd66
- version 1721a4890b
- version 169bb04085
- version 1547294ad7
- version 146e163760
- version 13b8be649c
- version 12d7853088
- version 1189c5c9ba
- version 10c7276328
- version 9a0f77353
- version 87d64c0a5
- version 7cbbd7161
- version 62bafd8db
- version 58671ee95
- version 442aadbca
- version 3d7ba5a19
- version 201d09552
- version 1fe0addf2
- master (base)
- dernière version0fd238fe29 validations,
- version 3177648f0028 validations,
- version 30b8bae84627 validations,
- version 296f7e117926 validations,
- version 28b6ef9cf125 validations,
- version 27f08d1f0924 validations,
- version 26e8e3883e22 validations,
- version 25713e1ae321 validations,
- version 24aab633b320 validations,
- version 237f6c71bf20 validations,
- version 22f8d83c2319 validations,
- version 211886cd0c21 validations,
- version 20f545edd421 validations,
- version 19e27b980719 validations,
- version 18c537cd6619 validations,
- version 1721a4890b18 validations,
- version 169bb0408517 validations,
- version 1547294ad716 validations,
- version 146e16376014 validations,
- version 13b8be649c12 validations,
- version 12d785308811 validations,
- version 1189c5c9ba9 validations,
- version 10c72763288 validations,
- version 9a0f773537 validations,
- version 87d64c0a57 validations,
- version 7cbbd71617 validations,
- version 62bafd8db6 validations,
- version 58671ee955 validations,
- version 442aadbca5 validations,
- version 3d7ba5a194 validations,
- version 201d095523 validations,
- version 1fe0addf22 validations,
Comparer les modifications
- Côte à côte
- En ligne
Fichiers
37Chargement en cours