summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty/sol2/docs/source/api/property.rst
diff options
context:
space:
mode:
Diffstat (limited to '3rdparty/sol2/docs/source/api/property.rst')
-rw-r--r--3rdparty/sol2/docs/source/api/property.rst64
1 files changed, 0 insertions, 64 deletions
diff --git a/3rdparty/sol2/docs/source/api/property.rst b/3rdparty/sol2/docs/source/api/property.rst
deleted file mode 100644
index e3ee02e2353..00000000000
--- a/3rdparty/sol2/docs/source/api/property.rst
+++ /dev/null
@@ -1,64 +0,0 @@
-property
-========
-
-.. code-block:: cpp
-
- template <typename Read, typename Write>
- decltype(auto) property ( Read&& read_function, Write&& write_function );
- template <typename Read>
- decltype(auto) property ( Read&& read_function );
- template <typename Write>
- decltype(auto) property ( Write&& write_function );
-
-These set of functions create a type which allows a setter and getter pair (or a single getter, or a single setter) to be used to create a variable that is either read-write, read-only, or write-only. When used during :doc:`usertype<usertype>` construction, it will create a variable that uses the setter/getter member function specified.
-
-.. code-block:: cpp
- :caption: player.hpp
- :linenos:
-
- class Player {
- public:
- int get_hp() const {
- return hp;
- }
-
- void set_hp( int value ) {
- hp = value;
- }
-
- int get_max_hp() const {
- return hp;
- }
-
- void set_max_hp( int value ) {
- maxhp = value;
- }
-
- private:
- int hp = 50;
- int maxHp = 50;
- }
-
-.. code-block:: cpp
- :caption: game.cpp
- :linenos:
-
- sol::state lua;
- lua.open_libraries(sol::lib::base);
-
- lua.set("theplayer", Player());
-
- // Yes, you can register after you set a value and it will
- // connect up the usertype automatically
- lua.new_usertype<Player>( "Player",
- "hp", sol::property(&Player::get_hp, &Player::set_hp),
- "maxHp", sol::property(&Player::get_max_hp, &Player::set_max_hp)
- );
-
-
-.. code-block:: lua
- :caption: game-snippet.lua
-
- -- variable syntax, calls functions
- theplayer.hp = 20
- print(theplayer.hp) \ No newline at end of file