runtime(doc): Update vim9class help (#13292)
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/doc/vim9class.txt b/runtime/doc/vim9class.txt
index 3e5493f..00bdf36 100644
--- a/runtime/doc/vim9class.txt
+++ b/runtime/doc/vim9class.txt
@@ -413,7 +413,9 @@
*E1373*
A class extending the abstract class must implement all the abstract methods.
The signature (arguments, argument types and return type) must be exactly the
-same. Class methods in an abstract class can also be abstract methods.
+same. If the return type of a method is a class, then that class or one of
+its subclasses can be used in the extended method. Class methods in an
+abstract class can also be abstract methods.
==============================================================================
@@ -548,8 +550,10 @@
*E1356* *E1357* *E1358*
Object methods of the base class can be overruled. The signature (arguments,
-argument types and return type) must be exactly the same. The method of the
-base class can be called by prefixing "super.".
+argument types and return type) must be exactly the same. If the return type
+of a method is a class, then that class or one of its subclasses can be used
+in the extended method. The method of the base class can be called by
+prefixing "super.".
*E1377*
The access level of a method (public or private) in a child class should be
@@ -738,17 +742,19 @@
7. Type definition *Vim9-type* *:type*
+{not implemented yet}
+
A type definition is giving a name to a type specification. For Example: >
:type ListOfStrings list<string>
-TODO: more explanation
-
==============================================================================
8. Enum *Vim9-enum* *:enum* *:endenum*
+{not implemented yet}
+
An enum is a type that can have one of a list of values. Example: >
:enum Color
@@ -759,8 +765,6 @@
Black
:endenum
-TODO: more explanation
-
==============================================================================