aboutsummaryrefslogtreecommitdiff
path: root/src/script/lua_api/l_metadata.h
diff options
context:
space:
mode:
authorJude Melton-Houghton <jwmhjwmh@gmail.com>2022-10-04 08:31:36 -0400
committerGitHub <noreply@github.com>2022-10-04 08:31:36 -0400
commit7632af3c73fc4e4ae3ad4c98c90c39b47c3b8379 (patch)
tree08b974d6ecafb6c20de565f96e329748030c1519 /src/script/lua_api/l_metadata.h
parentb21fb1837955e6385137184cac906245821b20e4 (diff)
downloadminetest-7632af3c73fc4e4ae3ad4c98c90c39b47c3b8379.tar.xz
Consolidate API object code (#12728)
Co-authored-by: sfan5 <sfan5@live.de>
Diffstat (limited to 'src/script/lua_api/l_metadata.h')
-rw-r--r--src/script/lua_api/l_metadata.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/script/lua_api/l_metadata.h b/src/script/lua_api/l_metadata.h
index b61957642..084b06c83 100644
--- a/src/script/lua_api/l_metadata.h
+++ b/src/script/lua_api/l_metadata.h
@@ -34,9 +34,9 @@ class MetaDataRef : public ModApiBase
public:
virtual ~MetaDataRef() = default;
-protected:
- static MetaDataRef *checkobject(lua_State *L, int narg);
+ static MetaDataRef *checkAnyMetadata(lua_State *L, int narg);
+protected:
virtual void reportMetadataChange(const std::string *name = nullptr) {}
virtual IMetadata *getmeta(bool auto_create) = 0;
virtual void clearMeta() = 0;
@@ -44,8 +44,12 @@ protected:
virtual void handleToTable(lua_State *L, IMetadata *meta);
virtual bool handleFromTable(lua_State *L, int table, IMetadata *meta);
+ static void registerMetadataClass(lua_State *L, const char *name, const luaL_Reg *methods);
+
// Exported functions
+ static int gc_object(lua_State *L);
+
// contains(self, name)
static int l_contains(lua_State *L);