diff --git a/src/box/lua/tuple.cc b/src/box/lua/tuple.cc index b63e2b68fe6a98ed65595c0328aa14fb08c7df88..b872cce87ce6a31720a87e03808017cb98432742 100644 --- a/src/box/lua/tuple.cc +++ b/src/box/lua/tuple.cc @@ -574,6 +574,7 @@ box_lua_tuple_init(struct lua_State *L) /* export C functions to Lua */ luaL_newmetatable(L, tuplelib_name); luaL_register(L, NULL, lbox_tuple_meta); + /* save Lua/C functions to the global variable (cleaned by tuple.lua) */ lua_setglobal(L, "cfuncs"); luaL_register_type(L, tuple_iteratorlib_name, lbox_tuple_iterator_meta); diff --git a/src/box/lua/tuple.lua b/src/box/lua/tuple.lua index d81d24fe3f8f7f3372e8ce1d55026ecb9a30e5f8..c2989d2897f30f87076755eb5865330f158b7ae1 100644 --- a/src/box/lua/tuple.lua +++ b/src/box/lua/tuple.lua @@ -38,6 +38,8 @@ ffi.metatype('struct tuple', { __gc = tuple_gc; __len = cfuncs.__len; __tostring = function(tuple) + -- Unpack tuple, call yaml.encode, remove yaml header and footer + -- 5 = '---\n\n' (header), -6 = '\n...\n' (footer) return yaml.encode(methods.totable(tuple)):sub(5, -6) end; __index = function(tuple, key)