From ac63272675cdc3919886d9ee9b99903bb23c6277 Mon Sep 17 00:00:00 2001 From: AlexHaxe Date: Wed, 29 Jan 2025 11:00:46 +0100 Subject: [PATCH] fixed sharp detection for complex sharp conditions --- .../features/haxe/InlineValueFeature.hx | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/src/haxeLanguageServer/features/haxe/InlineValueFeature.hx b/src/haxeLanguageServer/features/haxe/InlineValueFeature.hx index 21bf8ee1..53cbd5f4 100644 --- a/src/haxeLanguageServer/features/haxe/InlineValueFeature.hx +++ b/src/haxeLanguageServer/features/haxe/InlineValueFeature.hx @@ -29,14 +29,17 @@ class InlineValueFeature { } function onInlineValue(params:InlineValueParams, token:CancellationToken, resolve:Array->Void, reject:ResponseError->Void) { + final onResolve = context.startTimer("textDocument/inlineValue"); if (context.config.user.disableRefactorCache || context.config.user.disableInlineValue) { resolve([]); + onResolve(); return; } var file = refactorCache.fileList.getFile(params.textDocument.uri.toFsPath().toString()); if (file == null) { reject.handler()("file not found"); + onResolve(); return; } @@ -129,6 +132,7 @@ class InlineValueFeature { } resolve(inlineValueVars); + onResolve(); } function isSharpCondition(params:InlineValueParams, identifier:Identifier):Bool { @@ -144,13 +148,8 @@ class InlineValueFeature { case Dot: case Const(CIdent(_)): case POpen: - switch (TokenTreeCheckUtils.getPOpenType(parent)) { - case SwitchCondition: - return true; - default: - return false; - } - case Unop(_): + case Unop(OpNot): + case Binop(OpBoolAnd) | Binop(OpBoolOr): case Sharp("if") | Sharp("elseif"): return true; default: