diff options
-rw-r--r-- | runtime/doc/tags | 3 | ||||
-rw-r--r-- | runtime/doc/vim9class.txt | 24 |
2 files changed, 20 insertions, 7 deletions
diff --git a/runtime/doc/tags b/runtime/doc/tags index 5ac1db2cb3..5c127b23bb 100644 --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -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* diff --git a/runtime/doc/vim9class.txt b/runtime/doc/vim9class.txt index 929597c70b..c1ebce4af6 100644 --- a/runtime/doc/vim9class.txt +++ b/runtime/doc/vim9class.txt @@ -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 ~ |