mirror of
https://github.com/astral-sh/ruff.git
synced 2025-12-23 09:19:39 +00:00
This PR generalizes the signature_help system's SignatureWriter which could get the subspans of function parameters. We now have TypeDetailsWriter which is threaded between type's display implementations via a new `fmt_detailed` method that many of the Display types now have. With this information we can properly add goto-type targets to our inlay hints. This also lays groundwork for any future "I want to render a type but get spans" work. Also a ton of lifetimes are introduced to avoid things getting conflated with `'db`. This PR is broken up into a series of commits: * Generalizing `SignatureWriter` to `TypeDetailsWriter`, but not using it anywhere else. This commit was confirmed to be a non-functional change (no test results changed) * Introducing `fmt_detailed` everywhere to thread through `TypeDetailsWriter` and annotate various spans as "being" a given Type -- this is also where I had to reckon with a ton of erroneous `&'db self`. This commit was also confirmed to be a non-functional change. * Finally, actually using the results for goto-type on inlay hints! * Regenerating snapshots, fixups, etc. |
||
|---|---|---|
| .. | ||
| ruff | ||
| ruff_annotate_snippets | ||
| ruff_benchmark | ||
| ruff_cache | ||
| ruff_db | ||
| ruff_dev | ||
| ruff_diagnostics | ||
| ruff_formatter | ||
| ruff_graph | ||
| ruff_index | ||
| ruff_linter | ||
| ruff_macros | ||
| ruff_memory_usage | ||
| ruff_notebook | ||
| ruff_options_metadata | ||
| ruff_python_ast | ||
| ruff_python_ast_integration_tests | ||
| ruff_python_codegen | ||
| ruff_python_formatter | ||
| ruff_python_importer | ||
| ruff_python_index | ||
| ruff_python_literal | ||
| ruff_python_parser | ||
| ruff_python_semantic | ||
| ruff_python_stdlib | ||
| ruff_python_trivia | ||
| ruff_python_trivia_integration_tests | ||
| ruff_server | ||
| ruff_source_file | ||
| ruff_text_size | ||
| ruff_wasm | ||
| ruff_workspace | ||
| ty | ||
| ty_combine | ||
| ty_completion_eval | ||
| ty_ide | ||
| ty_project | ||
| ty_python_semantic | ||
| ty_server | ||
| ty_static | ||
| ty_test | ||
| ty_vendored | ||
| ty_wasm | ||