summaryrefslogtreecommitdiff
path: root/libs/lua/LuaBridge/LuaBridge.h
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-03-20 20:54:15 +0100
committerRobin Gareus <robin@gareus.org>2016-03-20 20:54:36 +0100
commit618ef9f9230a4ef497a6c0c003f26fa4fbc351fa (patch)
treee2f7d5bc7acccbdd47c96fb42518d701b7e2cbba /libs/lua/LuaBridge/LuaBridge.h
parent8df6101fd39c50cf40b7a4991bbba50ea59feda3 (diff)
Prepare Lua Binding Documentation (JSON)
Diffstat (limited to 'libs/lua/LuaBridge/LuaBridge.h')
-rw-r--r--libs/lua/LuaBridge/LuaBridge.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/libs/lua/LuaBridge/LuaBridge.h b/libs/lua/LuaBridge/LuaBridge.h
index d03120ae00..a7384f68d3 100644
--- a/libs/lua/LuaBridge/LuaBridge.h
+++ b/libs/lua/LuaBridge/LuaBridge.h
@@ -113,6 +113,40 @@ private:
}
};
+//------------------------------------------------------------------------------
+
+#ifdef LUABINDINGDOC
+class LuaBindingDoc
+{
+public:
+ static bool printBindings ()
+ {
+ return getSettings().print_bindings;
+ }
+
+ static void setPrintBindings (bool en)
+ {
+ getSettings().print_bindings = en;
+ }
+
+private:
+ struct Settings
+ {
+ Settings () : print_bindings (false) { }
+ bool print_bindings;
+ };
+
+ static Settings& getSettings ()
+ {
+ static Settings settings;
+ return settings;
+ }
+};
+#endif
+
+//------------------------------------------------------------------------------
+
+
#include "detail/Userdata.h"
#include "detail/CFunctions.h"
#include "detail/Namespace.h"
@@ -150,6 +184,13 @@ inline void setHideMetatables (bool shouldHide)
Security::setHideMetatables (shouldHide);
}
+#ifdef LUABINDINGDOC
+inline void setPrintBindings (bool en)
+{
+ LuaBindingDoc::setPrintBindings (en);
+}
+#endif
+
} // end Namespace
#endif