forked from aniani/vim
patch 9.0.1786: Vim9: need instanceof() function
Problem: Vim9: need instanceof() function Solution: Implement instanceof() builtin Implemented in the same form as Python's isinstance because it allows for checking multiple class types at the same time. closes: #12867 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: LemonBoy <thatlemon@gmail.com>
This commit is contained in:
committed by
Christian Brabandt
parent
1193951beb
commit
afe0466fb1
@@ -2301,6 +2301,24 @@ def Test_insert()
|
||||
v9.CheckDefAndScriptFailure(['insert([2, 3], 1, "x")'], ['E1013: Argument 3: type mismatch, expected number but got string', 'E1210: Number required for argument 3'])
|
||||
enddef
|
||||
|
||||
def Test_instanceof()
|
||||
var lines =<< trim END
|
||||
vim9script
|
||||
class Foo
|
||||
endclass
|
||||
instanceof('hello', Foo)
|
||||
END
|
||||
v9.CheckScriptFailure(lines, 'E616: Object required for argument 1')
|
||||
|
||||
lines =<< trim END
|
||||
vim9script
|
||||
class Foo
|
||||
endclass
|
||||
instanceof(Foo.new(), 123)
|
||||
END
|
||||
v9.CheckScriptFailure(lines, 'E693: List or Class required for argument 2')
|
||||
enddef
|
||||
|
||||
def Test_invert()
|
||||
v9.CheckDefAndScriptFailure(['invert("x")'], ['E1013: Argument 1: type mismatch, expected number but got string', 'E1210: Number required for argument 1'])
|
||||
enddef
|
||||
|
||||
Reference in New Issue
Block a user