initial commit, 4.5 stable
Some checks failed
🔗 GHA / 📊 Static checks (push) Has been cancelled
🔗 GHA / 🤖 Android (push) Has been cancelled
🔗 GHA / 🍏 iOS (push) Has been cancelled
🔗 GHA / 🐧 Linux (push) Has been cancelled
🔗 GHA / 🍎 macOS (push) Has been cancelled
🔗 GHA / 🏁 Windows (push) Has been cancelled
🔗 GHA / 🌐 Web (push) Has been cancelled
Some checks failed
🔗 GHA / 📊 Static checks (push) Has been cancelled
🔗 GHA / 🤖 Android (push) Has been cancelled
🔗 GHA / 🍏 iOS (push) Has been cancelled
🔗 GHA / 🐧 Linux (push) Has been cancelled
🔗 GHA / 🍎 macOS (push) Has been cancelled
🔗 GHA / 🏁 Windows (push) Has been cancelled
🔗 GHA / 🌐 Web (push) Has been cancelled
This commit is contained in:
139
modules/gdscript/tests/scripts/lsp/class.gd
Normal file
139
modules/gdscript/tests/scripts/lsp/class.gd
Normal file
@@ -0,0 +1,139 @@
|
||||
extends Node
|
||||
|
||||
class Inner1 extends Node:
|
||||
# ^^^^^^ class1 -> class1
|
||||
var member1 := 42
|
||||
# ^^^^^^^ class1:member1 -> class1:member1
|
||||
var member2 : int = 13
|
||||
# ^^^^^^^ class1:member2 -> class1:member2
|
||||
var member3 = 1337
|
||||
# ^^^^^^^ class1:member3 -> class1:member3
|
||||
|
||||
signal changed(old, new)
|
||||
# ^^^^^^^ class1:signal -> class1:signal
|
||||
func my_func(arg1: int, arg2: String, arg3):
|
||||
# | | | | | | ^^^^ class1:func:arg3 -> class1:func:arg3
|
||||
# | | | | ^^^^ class1:func:arg2 -> class1:func:arg2
|
||||
# | | ^^^^ class1:func:arg1 -> class1:func:arg1
|
||||
# ^^^^^^^ class1:func -> class1:func
|
||||
print(arg1, arg2, arg3)
|
||||
# | | | | ^^^^ -> class1:func:arg3
|
||||
# | | ^^^^ -> class1:func:arg2
|
||||
# ^^^^ -> class1:func:arg1
|
||||
changed.emit(arg1, arg3)
|
||||
# | | | ^^^^ -> class1:func:arg3
|
||||
# | ^^^^ -> class1:func:arg1
|
||||
#<^^^^^ -> class1:signal
|
||||
return arg1 + arg2.length() + arg3
|
||||
# | | | | ^^^^ -> class1:func:arg3
|
||||
# | | ^^^^ -> class1:func:arg2
|
||||
# ^^^^ -> class1:func:arg1
|
||||
|
||||
class Inner2:
|
||||
# ^^^^^^ class2 -> class2
|
||||
var member1 := 42
|
||||
# ^^^^^^^ class2:member1 -> class2:member1
|
||||
var member2 : int = 13
|
||||
# ^^^^^^^ class2:member2 -> class2:member2
|
||||
var member3 = 1337
|
||||
# ^^^^^^^ class2:member3 -> class2:member3
|
||||
|
||||
signal changed(old, new)
|
||||
# ^^^^^^^ class2:signal -> class2:signal
|
||||
func my_func(arg1: int, arg2: String, arg3):
|
||||
# | | | | | | ^^^^ class2:func:arg3 -> class2:func:arg3
|
||||
# | | | | ^^^^ class2:func:arg2 -> class2:func:arg2
|
||||
# | | ^^^^ class2:func:arg1 -> class2:func:arg1
|
||||
# ^^^^^^^ class2:func -> class2:func
|
||||
print(arg1, arg2, arg3)
|
||||
# | | | | ^^^^ -> class2:func:arg3
|
||||
# | | ^^^^ -> class2:func:arg2
|
||||
# ^^^^ -> class2:func:arg1
|
||||
changed.emit(arg1, arg3)
|
||||
# | | | ^^^^ -> class2:func:arg3
|
||||
# | ^^^^ -> class2:func:arg1
|
||||
#<^^^^^ -> class2:signal
|
||||
return arg1 + arg2.length() + arg3
|
||||
# | | | | ^^^^ -> class2:func:arg3
|
||||
# | | ^^^^ -> class2:func:arg2
|
||||
# ^^^^ -> class2:func:arg1
|
||||
|
||||
class Inner三 extends Inner2:
|
||||
# | | ^^^^^^ -> class2
|
||||
# ^^^^^^ class3 -> class3
|
||||
var whatever = "foo"
|
||||
# ^^^^^^^^ class3:whatever -> class3:whatever
|
||||
|
||||
var ütf8 = ""
|
||||
# ^^^^ class3:utf8 -> class3:utf8
|
||||
|
||||
func _init():
|
||||
# ^^^^^ class3:init
|
||||
# Note: no self-ref check here: resolves to `Object._init`.
|
||||
# usages of `Inner三.new()` DO resolve to this `_init`
|
||||
pass
|
||||
|
||||
class NestedInInner3:
|
||||
# ^^^^^^^^^^^^^^ class3:nested1 -> class3:nested1
|
||||
var some_value := 42
|
||||
# ^^^^^^^^^^ class3:nested1:some_value -> class3:nested1:some_value
|
||||
|
||||
class AnotherNestedInInner3 extends NestedInInner3:
|
||||
#! | | ^^^^^^^^^^^^^^ -> class3:nested1
|
||||
# ^^^^^^^^^^^^^^^^^^^^^ class3:nested2 -> class3:nested2
|
||||
var another_value := 13
|
||||
# ^^^^^^^^^^^^^ class3:nested2:another_value -> class3:nested2:another_value
|
||||
|
||||
func _ready():
|
||||
var inner1 = Inner1.new()
|
||||
# | | ^^^^^^ -> class1
|
||||
# ^^^^^^ func:class1 -> func:class1
|
||||
var value1 = inner1.my_func(1,"",3)
|
||||
# | | | | ^^^^^^^ -> class1:func
|
||||
# | | ^^^^^^ -> func:class1
|
||||
# ^^^^^^ func:class1:value1 -> func:class1:value1
|
||||
var value2 = inner1.member3
|
||||
# | | | | ^^^^^^^ -> class1:member3
|
||||
# | | ^^^^^^ -> func:class1
|
||||
# ^^^^^^ func:class1:value2 -> func:class1:value2
|
||||
print(value1, value2)
|
||||
# | | ^^^^^^ -> func:class1:value2
|
||||
# ^^^^^^ -> func:class1:value1
|
||||
|
||||
var inner3 = Inner三.new()
|
||||
# | | | | ^^^ -> class3:init
|
||||
# | | ^^^^^^ -> class3
|
||||
# ^^^^^^ func:class3 -> func:class3
|
||||
print(inner3)
|
||||
# ^^^^^^ -> func:class3
|
||||
|
||||
print(inner3.ütf8)
|
||||
# | | ^^^^ -> class3:utf8
|
||||
# ^^^^^^ -> func:class3
|
||||
|
||||
var nested1 = Inner三.NestedInInner3.new()
|
||||
# | | | | ^^^^^^^^^^^^^^ -> class3:nested1
|
||||
# | | ^^^^^^ -> class3
|
||||
# ^^^^^^^ func:class3:nested1 -> func:class3:nested1
|
||||
var value_nested1 = nested1.some_value
|
||||
# | | | | ^^^^^^^^^^ -> class3:nested1:some_value
|
||||
# | | ^^^^^^^ -> func:class3:nested1
|
||||
# ^^^^^^^^^^^^^ func:class3:nested1:value
|
||||
print(value_nested1)
|
||||
# ^^^^^^^^^^^^^ -> func:class3:nested1:value
|
||||
|
||||
var nested2 = Inner三.AnotherNestedInInner3.new()
|
||||
# | | | | ^^^^^^^^^^^^^^^^^^^^^ -> class3:nested2
|
||||
# | | ^^^^^^ -> class3
|
||||
# ^^^^^^^ func:class3:nested2 -> func:class3:nested2
|
||||
var value_nested2 = nested2.some_value
|
||||
# | | | | ^^^^^^^^^^ -> class3:nested1:some_value
|
||||
# | | ^^^^^^^ -> func:class3:nested2
|
||||
# ^^^^^^^^^^^^^ func:class3:nested2:value
|
||||
var another_value_nested2 = nested2.another_value
|
||||
# | | | | ^^^^^^^^^^^^^ -> class3:nested2:another_value
|
||||
# | | ^^^^^^^ -> func:class3:nested2
|
||||
# ^^^^^^^^^^^^^^^^^^^^^ func:class3:nested2:another_value_nested
|
||||
print(value_nested2, another_value_nested2)
|
||||
# | | ^^^^^^^^^^^^^^^^^^^^^ -> func:class3:nested2:another_value_nested
|
||||
# ^^^^^^^^^^^^^ -> func:class3:nested2:value
|
Reference in New Issue
Block a user