classref: Sync with 2.0 branch

This commit is contained in:
Rémi Verschelde
2016-04-27 23:07:25 +02:00
parent e226cc7d1d
commit 5d24aa4e9b
3 changed files with 51 additions and 4 deletions

View File

@@ -13,7 +13,7 @@ WeakRef
Brief Description
-----------------
Holds an :ref:`Object<class_object>`, but does not contribute to the reference count if the object is a reference.
Member Functions
----------------
@@ -22,6 +22,11 @@ Member Functions
| :ref:`Object<class_object>` | :ref:`get_ref<class_WeakRef_get_ref>` **(** **)** const |
+------------------------------+----------------------------------------------------------+
Description
-----------
A weakref can hold a :ref:`Reference<class_reference>`, without contributing to the reference counter. A weakref can be created from an :ref:`Object<class_object>` using :ref:`@GDScript.weakref<class_@GDScript_weakref>`. If this object is not a reference, weakref still works, however, it does not have any effect on the object. Weakrefs are useful in cases where multiple classes have variables that refer to eachother. Without weakrefs, using these classes could lead to memory leaks, since both references keep eachother from being released. Making part of the variables a weakref can prevent this cyclic dependency, and allows the references to be released.
Member Function Description
---------------------------
@@ -29,4 +34,6 @@ Member Function Description
- :ref:`Object<class_object>` **get_ref** **(** **)** const
Returns the :ref:`Object<class_object>` this weakref is referring to.