sol2/docs/source/api/userdata.rst

13 lines
673 B
ReStructuredText
Raw Normal View History

2016-03-12 06:47:15 +08:00
userdata
========
*reference to a userdata*
2016-03-12 06:47:15 +08:00
.. code-block:: cpp
:caption: (light\_)userdata reference
class userdata : public table;
2016-03-12 06:47:15 +08:00
class light_userdata : public table;
2016-03-12 06:47:15 +08:00
These types are meant to hold a reference to a (light) userdata from Lua and make it easy to push an existing userdata onto the stack. It is essentially identical to :doc:`table<table>` in every way, just with a definitive C++ type that ensures the type is some form of userdata (helpful for trapping type errors with :doc:`safety features turned on<../safety>`). You can also use its ``.is<T>()`` and ``.as<T>()`` methods to check if its of a specific type and retrieve that type, respectively.