]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(doc): add some error codes to `:help vim9class` (#13747)
authorerrael <errael@raelity.com>
Thu, 21 Dec 2023 16:34:15 +0000 (08:34 -0800)
committerGitHub <noreply@github.com>
Thu, 21 Dec 2023 16:34:15 +0000 (17:34 +0100)
Signed-off-by: Ernie Rael <errael@raelity.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
runtime/doc/tags
runtime/doc/vim9class.txt

index 5ac1db2cb3af0ad9092c86756fc2bb08bca9206a..5c127b23bbc3474f0f1b11d617203acd66ed1170 100644 (file)
@@ -4504,11 +4504,14 @@ E1400   vim9class.txt   /*E1400*
 E1401  vim9class.txt   /*E1401*
 E1402  vim9class.txt   /*E1402*
 E1403  vim9class.txt   /*E1403*
+E1405  vim9class.txt   /*E1405*
+E1406  vim9class.txt   /*E1406*
 E1407  vim9class.txt   /*E1407*
 E1408  vim9class.txt   /*E1408*
 E1409  vim9class.txt   /*E1409*
 E141   message.txt     /*E141*
 E1410  vim9class.txt   /*E1410*
+E1411  vim9class.txt   /*E1411*
 E142   message.txt     /*E142*
 E143   autocmd.txt     /*E143*
 E144   various.txt     /*E144*
index 929597c70bf81d681ffe076bd1cca1ead29a2a57..c1ebce4af6f16003425df2eef991c0d70a423c05 100644 (file)
@@ -103,17 +103,27 @@ below for how to do this more efficiently): >
 You can create an object from this class with the new() method: >
 
        var pos = TextPosition.new(1, 1)
-
+<
 The object variables "lnum" and "col" can be accessed directly: >
 
        echo $'The text position is ({pos.lnum}, {pos.col})'
 <                                                      *E1317* *E1327*
-If you have been using other object-oriented languages you will notice that
-in Vim the object members are consistently referred to with the "this."
-prefix.  This is different from languages like Java and TypeScript.  The
-naming convention makes the object members easy to spot.  Also, when a
-variable does not have the "this." prefix you know it is not an object
-variable.
+If you have been using other object-oriented languages you will notice that in
+Vim, within a class definition, the object members are consistently referred
+to with the "this." prefix.  This is different from languages like Java and
+TypeScript.  The naming convention makes the object members easy to spot.
+Also, when a variable does not have the "this." prefix you know it is not an
+object variable.
+                                                               *E1411*
+From outside the class definition, access an object's methods and variables by
+using the object name followed by a dot following by the member: >
+
+       pos.lnum
+       pos.setCol(10)
+<
+                                                       *E1405* *E1406*
+A class name cannot be used as an expression.  A class name cannot be used in
+the left-hand-side of an assignment.
 
 
 Object variable write access ~