diff --git a/reference/weakref/book.xml b/reference/weakref/book.xml
index 1af2517c2f..7d710476a7 100644
--- a/reference/weakref/book.xml
+++ b/reference/weakref/book.xml
@@ -66,6 +66,7 @@ Object is dead!
&reference.weakref.setup;
&reference.weakref.weakref;
+ &reference.weakref.weakmap;
diff --git a/reference/weakref/versions.xml b/reference/weakref/versions.xml
new file mode 100644
index 0000000000..3a854a594d
--- /dev/null
+++ b/reference/weakref/versions.xml
@@ -0,0 +1,47 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap.xml b/reference/weakref/weakmap.xml
new file mode 100644
index 0000000000..dfb76e8e21
--- /dev/null
+++ b/reference/weakref/weakmap.xml
@@ -0,0 +1,125 @@
+
+
+
+
+
+ The WeakMap class
+ WeakMap
+
+
+
+
+
+ &reftitle.intro;
+
+
+
+
+
+
+
+ &reftitle.classsynopsis;
+
+
+
+ WeakMap
+
+
+
+
+ WeakMap
+
+
+
+ Countable
+
+
+
+ ArrayAccess
+
+
+
+ Iterator
+
+
+
+ Traversable
+
+
+
+
+ &Methods;
+
+
+
+
+
+
+
+ &reftitle.examples;
+
+
+ Weakmap usage example
+
+
+
+ &example.outputs;
+
+
+
+
+
+
+
+
+
+
+ &reference.weakref.entities.weakmap;
+
+
+
+
diff --git a/reference/weakref/weakmap/construct.xml b/reference/weakref/weakmap/construct.xml
new file mode 100644
index 0000000000..cd2294c5cb
--- /dev/null
+++ b/reference/weakref/weakmap/construct.xml
@@ -0,0 +1,56 @@
+
+
+
+
+
+ WeakMap::__construct
+ Constructs a new map
+
+
+
+ &reftitle.description;
+
+ public WeakMap::__construct
+
+
+
+ Constructs a new map.
+
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ &return.void;
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/count.xml b/reference/weakref/weakmap/count.xml
new file mode 100644
index 0000000000..b0bb65d7ea
--- /dev/null
+++ b/reference/weakref/weakmap/count.xml
@@ -0,0 +1,53 @@
+
+
+
+
+
+ WeakMap::count
+ Counts the number of live entries in the map
+
+
+
+ &reftitle.description;
+
+ public intWeakMap::count
+
+
+
+ Counts the number of live entries in the map.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ Returns the number of live entries in the map.
+
+
+
+
+
diff --git a/reference/weakref/weakmap/current.xml b/reference/weakref/weakmap/current.xml
new file mode 100644
index 0000000000..56a08c50f7
--- /dev/null
+++ b/reference/weakref/weakmap/current.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+ WeakMap::current
+ Returns the current value under iteration
+
+
+
+ &reftitle.description;
+
+ public mixedWeakMap::current
+
+
+
+ Returns the current value being iterated on in the map.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ The value currently being iterated on.
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/key.xml b/reference/weakref/weakmap/key.xml
new file mode 100644
index 0000000000..75d3f2207d
--- /dev/null
+++ b/reference/weakref/weakmap/key.xml
@@ -0,0 +1,56 @@
+
+
+
+
+
+ WeakMap::key
+ Returns the current key under iteration.
+
+
+
+ &reftitle.description;
+
+ public objectWeakMap::key
+
+
+
+ Returns the object serving as key in the map, at the current iterating
+ position.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ The object key currently being iterated.
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/next.xml b/reference/weakref/weakmap/next.xml
new file mode 100644
index 0000000000..0b6077e978
--- /dev/null
+++ b/reference/weakref/weakmap/next.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+ WeakMap::next
+ Advances to the next map element
+
+
+
+ &reftitle.description;
+
+ public voidWeakMap::next
+
+
+
+ Advances to the next map element.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ &return.void;
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/offsetexists.xml b/reference/weakref/weakmap/offsetexists.xml
new file mode 100644
index 0000000000..e2186d26ea
--- /dev/null
+++ b/reference/weakref/weakmap/offsetexists.xml
@@ -0,0 +1,63 @@
+
+
+
+
+
+ WeakMap::offsetExists
+ Checks whether a certain object is in the map
+
+
+
+ &reftitle.description;
+
+ public boolWeakMap::offsetExists
+ objectobject
+
+
+ Checks whether the passed object is referenced in the map.
+
+
+
+
+
+ &reftitle.parameters;
+
+
+ object
+
+
+ Object to check for.
+
+
+
+
+
+
+
+ &reftitle.returnvalues;
+
+ Returns &true; if the object is contained in the map, &false; otherwise.
+
+
+
+
+
diff --git a/reference/weakref/weakmap/offsetget.xml b/reference/weakref/weakmap/offsetget.xml
new file mode 100644
index 0000000000..f5eec1d26e
--- /dev/null
+++ b/reference/weakref/weakmap/offsetget.xml
@@ -0,0 +1,65 @@
+
+
+
+
+
+ WeakMap::offsetGet
+ Returns the value pointed to by a certain object
+
+
+
+ &reftitle.description;
+
+ public mixedWeakMap::offsetGet
+ objectobject
+
+
+ Returns the value pointed to by a certain object.
+
+
+
+
+ &reftitle.parameters;
+
+
+ object
+
+
+ Some object contained as key in the map.
+
+
+
+
+
+
+
+ &reftitle.returnvalues;
+
+ Returns the value associated to the object passed as argument, &null;
+ otherwise.
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/offsetset.xml b/reference/weakref/weakmap/offsetset.xml
new file mode 100644
index 0000000000..6611e06229
--- /dev/null
+++ b/reference/weakref/weakmap/offsetset.xml
@@ -0,0 +1,74 @@
+
+
+
+
+
+ WeakMap::offsetSet
+ Updates the map with a new key-value pair
+
+
+
+ &reftitle.description;
+
+ public voidWeakMap::offsetSet
+ objectobject
+ mixedvalue
+
+
+ Updates the map with a new key-value pair. If the key already existed in
+ the map, the old value is replaced with the new.
+
+
+
+
+ &reftitle.parameters;
+
+
+ object
+
+
+ The object serving as key of the key-value pair.
+
+
+
+
+ value
+
+
+ The arbitrary data serving as value of the key-value pair.
+
+
+
+
+
+
+
+ &reftitle.returnvalues;
+
+ &return.void;
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/offsetunset.xml b/reference/weakref/weakmap/offsetunset.xml
new file mode 100644
index 0000000000..45cad347c1
--- /dev/null
+++ b/reference/weakref/weakmap/offsetunset.xml
@@ -0,0 +1,64 @@
+
+
+
+
+
+ WeakMap::offsetUnset
+ Removes an entry from the map
+
+
+
+ &reftitle.description;
+
+ public voidWeakMap::offsetUnset
+ objectobject
+
+
+ Removes an entry from the map.
+
+
+
+
+ &reftitle.parameters;
+
+
+ object
+
+
+ The key object to remove from the map.
+
+
+
+
+
+
+
+ &reftitle.returnvalues;
+
+ &return.void;
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/rewind.xml b/reference/weakref/weakmap/rewind.xml
new file mode 100644
index 0000000000..2d1a4fa2d6
--- /dev/null
+++ b/reference/weakref/weakmap/rewind.xml
@@ -0,0 +1,55 @@
+
+
+
+
+
+ WeakMap::rewind
+ Rewinds the iterator to the beginning of the map
+
+
+
+ &reftitle.description;
+
+ public voidWeakMap::rewind
+
+
+
+ Rewinds the iterator to the beginning of the map.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ &return.void;
+
+
+
+
+
+
+
diff --git a/reference/weakref/weakmap/valid.xml b/reference/weakref/weakmap/valid.xml
new file mode 100644
index 0000000000..f963e1c4c9
--- /dev/null
+++ b/reference/weakref/weakmap/valid.xml
@@ -0,0 +1,54 @@
+
+
+
+
+
+ WeakMap::valid
+ Returns whether the iterator is still on a valid map element
+
+
+
+ &reftitle.description;
+
+ public boolWeakMap::valid
+
+
+
+ Returns whether the iterator is still on a valid map element.
+
+
+
+
+ &reftitle.parameters;
+ &no.function.parameters;
+
+
+
+ &reftitle.returnvalues;
+
+ Returns &true; if the iterator is on a valid element that can be
+ accessed, &false; otherwise.
+
+
+
+
+
diff --git a/reference/weakref/weakref.xml b/reference/weakref/weakref.xml
index aa8b847132..6d6a96236c 100644
--- a/reference/weakref/weakref.xml
+++ b/reference/weakref/weakref.xml
@@ -1,8 +1,8 @@
- The Weakref class
- Weakref
+ The WeakRef class
+ WeakRef
@@ -10,7 +10,7 @@
&reftitle.intro;
- The Weakref class provides a gateway to objects without preventing the garbage collector from freeing those objects.
+ The WeakRef class provides a gateway to objects without preventing the garbage collector from freeing those objects.
It also provides a way to turn a weak reference into a strong one.
@@ -21,13 +21,13 @@
- Weakref
+ WeakRef
- Weakref
+ WeakRef
@@ -44,7 +44,7 @@
&reftitle.examples;
- Weakref usage example
+ WeakRef usage example
valid()) {
echo "Object still exists!\n";