Skip to content

"'ownerClass' not understood" for dot completion in braces #22

@jamshark70

Description

@jamshark70

If I type 1000 and then dot, the language server provides completions.

If I first type f = {, VSC auto-closes the brace, so I'm looking at f = {} with the cursor in between braces.

Now I want the 1000.do loop inside the function. So I hit space and type 1000. and... as soon as I hit the dot, the language server barfs (with the text being f = { 1000.} at that point).

	Object:doesNotUnderstand	0x55a801a76340
		arg this = nil
		arg selector = ownerClass
		arg args = nil
	Meta_LSPDatabase:makeMethodCompletion	0x55a8039496c0
		arg this = LSPDatabase
		arg method = nil
		arg sortByClassHierarchy = false
		var sortText = nil
	a FunctionDef	0x55a8050f4080
		sourceCode = "<an open Function>"
		arg index = 27354
		var method = nil
	a FunctionDef	0x55a803dcce00
		sourceCode = "<an open Function>"
		arg elem = 27354
		arg i = 0
	Integer:for	0x55a803c89fc0
		arg this = 27354
		arg endval = 27352
		arg function = a Function
		var i = 27354
		var j = 0
		var stepval = -1
	Range:do	0x55a803f72c80
		arg this = Range(27354, -1)
		arg function = a Function
	Collection:collectAs	0x55a803dcca40
		arg this = Range(27354, -1)
		arg function = a Function
		arg class = Array
		var res = []
	a FunctionDef	0x55a8050f3a00
		sourceCode = "{
                |prefixString, trigger, completion, provideCompletionsFunc|
                var methodIndexRange, methods, results, isIncomplete;
                
                // @TODO should just return methods themselves, not indexes?
                methodIndexRange = LSPDatabase.matchMethods(completion);
                
                Log('LanguageServer.quark').info(\"Found % completions, returning %\", methodIndexRange.size, min(100, methodIndexRange.size));
                
   ...etc..."
		arg prefixString = 1000
		arg trigger = .
		arg completion = }
		arg provideCompletionsFunc = a Function
		var methodIndexRange = Range(27354, -1)
		var methods = nil
		var results = []
		var isIncomplete = false
	LSPCompletionHandler:handle	0x55a804ad4080
		arg this = a LSPCompletionHandler
		arg prefix = 1000
		arg trigger = .
		arg completion = }
		var deferredResult = Deferred(-860931744)

The issue may be related to arg completion = }.

I can probably look at this at some point, but not today. Just noting the finding.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions