robotcode-language-server 2.8.0.dev631__py3-none-any.whl → 2.8.0.dev670__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- __version__ = "2.8.0-dev.631"
1
+ __version__ = "2.8.0-dev.670"
@@ -14,7 +14,6 @@ from robotcode.core.lsp.types import (
14
14
  CodeActionContext,
15
15
  CodeActionKind,
16
16
  Command,
17
- Position,
18
17
  Range,
19
18
  )
20
19
  from robotcode.core.text_document import TextDocument
@@ -36,7 +35,6 @@ from robotcode.robot.diagnostics.semantic_analyzer.model import SemanticModel
36
35
  from robotcode.robot.diagnostics.semantic_analyzer.nodes import (
37
36
  DefinitionStatement,
38
37
  ImportStatement,
39
- KeywordCallStatement,
40
38
  )
41
39
  from robotcode.robot.utils.ast import get_node_at_position, range_from_token
42
40
  from robotcode.robot.utils.markdown_docs import (
@@ -374,16 +372,13 @@ class RobotCodeActionDocumentationProtocolPart(RobotLanguageServerProtocolPart,
374
372
  if isinstance(stmt, ImportStatement) and stmt.import_type in (ImportType.LIBRARY, ImportType.RESOURCE):
375
373
  return self._import_target_from_model(stmt, document, range, namespace)
376
374
 
377
- # Branch 2: keyword call / fixture / template.
378
- if isinstance(stmt, KeywordCallStatement):
379
- if range.start != range.end:
380
- return None
381
- kw_doc = stmt.keyword_doc
382
- if kw_doc is None:
383
- return None
384
- if not self._cursor_on_keyword_reference(range.start, stmt):
375
+ # Branch 2: keyword call / fixture / template, also a call in the body
376
+ # of an inline IF and an inner call of a Run Keyword variant.
377
+ call = model.keyword_call_at(range.start.line + 1, range.start.character)
378
+ if call is not None:
379
+ if range.start != range.end or call.keyword_doc is None:
385
380
  return None
386
- return self.keyword_target(kw_doc, stmt.lib_entry, document, namespace)
381
+ return self.keyword_target(call.keyword_doc, call.lib_entry, document, namespace)
387
382
 
388
383
  # Branch 3: keyword definition header.
389
384
  if isinstance(stmt, DefinitionStatement) and stmt.kind is NodeKind.KEYWORD_DEF:
@@ -436,21 +431,6 @@ class RobotCodeActionDocumentationProtocolPart(RobotLanguageServerProtocolPart,
436
431
  stmt.lib_entry.library_doc if stmt.lib_entry is not None else None,
437
432
  )
438
433
 
439
- @staticmethod
440
- def _cursor_on_keyword_reference(pos: Position, stmt: KeywordCallStatement) -> bool:
441
- """Cursor is within the NAMESPACE / "." / KEYWORD SemanticTokens
442
- that make up the keyword reference (BDD prefix excluded). Mirrors
443
- the legacy `position.is_in_range(range_from_token(keyword_token))`
444
- after the BDD-prefix strip that
445
- `get_keyworddoc_and_token_from_position` does.
446
- """
447
- ref_toks = [t for t in stmt.tokens if t.kind in (TokenKind.NAMESPACE, TokenKind.KEYWORD)]
448
- if not ref_toks:
449
- return False
450
- # Contiguous span from namespace start to keyword end also covers the
451
- # "." operator between them.
452
- return pos in Range(start=ref_toks[0].range.start, end=ref_toks[-1].range.end)
453
-
454
434
  def keyword_target(
455
435
  self,
456
436
  kw_doc: KeywordDoc,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: robotcode-language-server
3
- Version: 2.8.0-dev.631
3
+ Version: 2.8.0-dev.670
4
4
  Summary: RobotCode Language Server for Robot Framework
5
5
  Project-URL: Homepage, https://robotcode.io
6
6
  Project-URL: Donate, https://opencollective.com/robotcode
@@ -26,10 +26,10 @@ Classifier: Programming Language :: Python :: Implementation :: PyPy
26
26
  Classifier: Topic :: Utilities
27
27
  Classifier: Typing :: Typed
28
28
  Requires-Python: >=3.10
29
- Requires-Dist: robotcode-analyze==2.8.0-dev.631
30
- Requires-Dist: robotcode-jsonrpc2==2.8.0-dev.631
31
- Requires-Dist: robotcode-robot==2.8.0-dev.631
32
- Requires-Dist: robotcode==2.8.0-dev.631
29
+ Requires-Dist: robotcode-analyze==2.8.0-dev.670
30
+ Requires-Dist: robotcode-jsonrpc2==2.8.0-dev.670
31
+ Requires-Dist: robotcode-robot==2.8.0-dev.670
32
+ Requires-Dist: robotcode==2.8.0-dev.670
33
33
  Requires-Dist: robotframework>=5.0.0
34
34
  Description-Content-Type: text/markdown
35
35
 
@@ -1,5 +1,5 @@
1
1
  robotcode/language_server/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- robotcode/language_server/__version__.py,sha256=9SGjqX5uvERIavT5Cjgw0TSLgQ-nKCFaQ13-E6K7MDA,30
2
+ robotcode/language_server/__version__.py,sha256=H0IFmU7VH6n_W0CbM7UtSwMIjNMI6OcCSdI7uBsndDU,30
3
3
  robotcode/language_server/cli.py,sha256=FsutR2FF8YjCMRtq2c_i0wYSktP8KkhGnnfEy4fcpww,4136
4
4
  robotcode/language_server/hooks.py,sha256=wahxowTEo9Q16q5VK7AmhKDMdbtxcvqg9242-_L9tTA,204
5
5
  robotcode/language_server/py.typed,sha256=bWew9mHgMy8LqMu7RuqQXFXLBxh2CRx0dUbSx-3wE48,27
@@ -39,7 +39,7 @@ robotcode/language_server/robotframework/configuration.py,sha256=G6jchWIawSKiqKT
39
39
  robotcode/language_server/robotframework/protocol.py,sha256=ONaBVaqz4LZ0DGd9iKy43z4FPh2lI7jt5J1CIDH6mfw,10831
40
40
  robotcode/language_server/robotframework/server.py,sha256=-1EQ1zGyLAS1LM6aMa6IRT2KqYiLWWVr6GOhiQZ8Ncw,1045
41
41
  robotcode/language_server/robotframework/parts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- robotcode/language_server/robotframework/parts/code_action_documentation.py,sha256=JKG4zE29WgqxxxTUrKsjhvS7vsvLZu1gpdyqF7B-z7M,28416
42
+ robotcode/language_server/robotframework/parts/code_action_documentation.py,sha256=TFztfmk_nZDGJ6nNPHXTDyqL5zx3ZIa4O-DcGCYQVks,27583
43
43
  robotcode/language_server/robotframework/parts/code_action_helper_mixin.py,sha256=hAd3e5hMnpqi8vGReHQCI6bS8cwNggr6RA7F_knFL1o,4553
44
44
  robotcode/language_server/robotframework/parts/code_action_quick_fixes.py,sha256=wIJduFlNwvzZY371VaaTchXm8GgivSbQyPWQ30DpNOY,33770
45
45
  robotcode/language_server/robotframework/parts/code_action_refactor.py,sha256=t9QVp3zZ9VRvv1PSACegdGUiIgHzvE9vvCisIAtqcO8,27419
@@ -70,7 +70,7 @@ robotcode/language_server/robotframework/parts/selection_range.py,sha256=ye0Pkch
70
70
  robotcode/language_server/robotframework/parts/semantic_tokens.py,sha256=pbRpMMdV5XeVfhozYf6uUZG_XmMCN9MYwylBUBqFkPI,84553
71
71
  robotcode/language_server/robotframework/parts/signature_help.py,sha256=CJnG8LH21O60kZQLFltb0PzSsN745pYrmtASdE1d2Nw,31306
72
72
  robotcode/language_server/robotframework/parts/workspace_symbols.py,sha256=eywbtK56TTLbwuTwoUvNtlhIyAX-2l1BcZntYODuhPQ,3688
73
- robotcode_language_server-2.8.0.dev631.dist-info/METADATA,sha256=3dXweyXHX4j1PGSO0u0s0NNVkXPkeV31yvgixvvINKU,3324
74
- robotcode_language_server-2.8.0.dev631.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
75
- robotcode_language_server-2.8.0.dev631.dist-info/entry_points.txt,sha256=Mz2JImlHxd6aYE41Z2r8KaoCnbOcXlR5Zm9Qw_G9Ff0,57
76
- robotcode_language_server-2.8.0.dev631.dist-info/RECORD,,
73
+ robotcode_language_server-2.8.0.dev670.dist-info/METADATA,sha256=MeeZJAd1tC39VheE9Wvw1Wu7EX52z9IZH40LLHfAw3I,3324
74
+ robotcode_language_server-2.8.0.dev670.dist-info/WHEEL,sha256=W3fkpkm7-wf9vBI5Z-7s0eWkeM-spu78I8Neb98DeEg,87
75
+ robotcode_language_server-2.8.0.dev670.dist-info/entry_points.txt,sha256=Mz2JImlHxd6aYE41Z2r8KaoCnbOcXlR5Zm9Qw_G9Ff0,57
76
+ robotcode_language_server-2.8.0.dev670.dist-info/RECORD,,