patch 9.0.1885: Vim9: no support for abstract methods

Problem:  Vim9: no support for abstract methods
Solution: Add support for defining abstract methods in an abstract class

closes: #13044
closes: #13046

Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Yegappan Lakshmanan <yegappan@yahoo.com>
This commit is contained in:
Yegappan Lakshmanan
2023-09-08 19:27:51 +02:00
committed by Christian Brabandt
parent 86cfb39030
commit 7bcd25cad3
9 changed files with 275 additions and 15 deletions

View File

@ -358,6 +358,16 @@ class, for which objects can be created. Example: >
An abstract class is defined the same way as a normal class, except that it
does not have any new() method. *E1359*
*abstract-method*
An abstract method can be defined in an abstract class by using the "abstract"
prefix when defining the function: >
abstract class Shape
abstract def Draw()
endclass
A class extending the abstract class must implement all the abstract methods.
Class methods in an abstract class can also be abstract methods.
==============================================================================