aboutsummaryrefslogtreecommitdiff
path: root/src/util/numeric.h
diff options
context:
space:
mode:
authorJude Melton-Houghton <jwmhjwmh@gmail.com>2022-03-29 12:06:44 -0400
committerGitHub <noreply@github.com>2022-03-29 18:06:44 +0200
commit11aab4198be1a0f1104a433896e908e4c86de0c9 (patch)
tree5c3086fe6790fde7475e0ea3397c81d1cae564e8 /src/util/numeric.h
parent8d387433b14791db95e59127b5e6e30f58155c1e (diff)
downloadminetest-11aab4198be1a0f1104a433896e908e4c86de0c9.tar.gz
minetest-11aab4198be1a0f1104a433896e908e4c86de0c9.tar.bz2
minetest-11aab4198be1a0f1104a433896e908e4c86de0c9.zip
Optimize swapping nodes with equivalent lighting
Diffstat (limited to 'src/util/numeric.h')
0 files changed, 0 insertions, 0 deletions
href='#n107'>107 108 109 110 111 112 113 114 115
/*
Minetest
Copyright (C) 2013 celeron55, Perttu Ahola <celeron55@gmail.com>

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU Lesser General Public License as published by
the Free Software Foundation; either version 2.1 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along
with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
*/

#include "lua_api/l_itemstackmeta.h"
#include "lua_api/l_internal.h"
#include "common/c_content.h"

/*
	NodeMetaRef
*/
ItemStackMetaRef* ItemStackMetaRef::checkobject(lua_State *L, int narg)
{
	luaL_checktype(L, narg, LUA_TUSERDATA);
	void *ud = luaL_checkudata(L, narg, className);
	if (!ud)
		luaL_typerror(L, narg, className);

	return *(ItemStackMetaRef**)ud;  // unbox pointer
}

Metadata* ItemStackMetaRef::getmeta(bool auto_create)
{
	return &istack->metadata;
}

void ItemStackMetaRef::clearMeta()
{
	istack->metadata.clear();
}

void ItemStackMetaRef::reportMetadataChange()
{
	// TODO
}

// Exported functions

// garbage collector
int ItemStackMetaRef::gc_object(lua_State *L) {
	ItemStackMetaRef *o = *(ItemStackMetaRef **)(lua_touserdata(L, 1));
	delete o;