Referenced by6
Labels4

Referencing ideas

IdeaStatusTagsSummaryKatz
refactor_supportsyntactic symbols should be available for renaming, moving, and deleting. the extension should watch for the change. Detailed behaviour lives in ["../../mutation/refactor_support.rq"]. Implemented by ["../../../../packages/language/src/reqlan-rename-provider.ts"], ["../../../../packages/language/src/reqlan-idea-refactor.ts"], and ["../../../../packages/extension/src/mutation_module/refactor/index.ts"].0.079
syntax_featuresThe extension should provide language support for. rq files via the lsp. Syntax features should cover ideas, ideasets, imports, references, attributes, comments, and lists. Broken imports and references should be validated and reported in the editor. Go-to-definition and find-references should work for ideas, imports, and cross-file links. Find-references is served by ["../support/language-server-rust.rq".language_server_rust] ( `textDocument/references` ). Autoformatting should be supported for. rq files.0.046
comment_reference_refactor_supportdoneFile and symbol refactors must update [comment_reference] tokens in code files and in `.rq` comments. When a file or folder moves or is renamed, rewrite `rq:["path".idea]` paths relative to the referencing file: outbound paths inside the moved file, and inbound paths in other files that pointed at it. Aliased paths such as `rq:["@/old/file.rq".idea]` keep the alias and update the remainder. When an idea is renamed, update matching comment idea tokens. When an idea moves to another `.rq` file, rewrite qualified comment paths that targeted the old file for that idea. Pathless `rq:[idea]` tokens stay as name-only links. When an idea is deleted, remove comment references that targeted it. Relates to [refactor_file_moves], [refactor_symbol_rename], [refactor_symbol_move], [refactor_symbol_delete], [refactor_changes], ["./mutation-hooks.rq".move_file], ["./mutation-hooks.rq".rename_file], ["../language/comment-references/functional-code-comment-references.rq".references_in_functional_code_comments].0.215
refactor_changesOn rename, move, or delete of files or symbols, the extension should update the idea index, import statements, embedded file references, comment references, and other idea references that are affected. The index should be resilient to duplication, particularly when ideas move between files: the old hosting file URI must be cleared before or when the destination is reindexed. [refactor_file_moves] [refactor_symbol_rename] [refactor_symbol_move] [refactor_symbol_delete] [comment_reference_refactor_support] Implemented by ["../../../packages/analytical/src/index-store/workspace-index.ts"], ["../../../packages/extension/src/analytical_submodule/index-store/index-service.ts"], ["../../../packages/language/src/reqlan-idea-refactor.ts"], and ["../../../packages/extension/src/mutation_module/register-file-mutation-hooks.ts"].0.114
refactor_symbol_deleteAn idea declaration should offer a code action to delete it and update references. Deleting should remove the declaration, clear or rewrite AST and comment references that targeted it ( [comment_reference_refactor_support] ), and reindex affected files. [refactor_support] [refactor_changes] Implemented by ["../../../packages/language/src/reqlan-idea-refactor.ts"], ["../../../packages/language/src/reqlan-code-action-provider.ts"], ["../../../crates/reqlan-lsp/src/code_actions.rs"], and ["../../../packages/extension/src/mutation_module/refactor/register-idea-refactor-commands.ts"].0.106
refactor_symbol_movedoneAn idea can move to another existing `.rq` file from a code action or the [command_palette]. Palette commands use the idea under the cursor, or a pick list when the cursor is not on an idea. 1. Move idea ( `reqlan.refactor.moveIdea` ) - Cut the declaration from the source file. - Insert it into the destination file. - Remove source imports that the move makes unused. - Add the imports that the moved idea needs to the destination. - If the source file still refers to the idea, import it from the destination. - Rewrite comment references per [comment_reference_refactor_support]. - Reindex without duplicate idea rows for the old hosting file. 2. Move idea content ( `reqlan.refactor.moveIdeaContent` ) - Do the same as ( 1 ). - Always import the destination file in the source. - Leave a one-liner stub in the source: `idea_name [alias.idea_name]`. Do not overlap [decompose]: decompose writes a new file. Move and decompose share the resolve-plan-apply sequence in ["../../../packages/extension/src/mutation_module/refactor/idea-extract-flow.ts"]. [refactor_support] [refactor_changes]0.106

Reference labels

"../../../../packages/language/src/reqlan-idea-refactor.ts", "../../../packages/language/src/reqlan-idea-refactor.ts", ../../../../packages/language/src/reqlan-idea-refactor.ts, ../../../packages/language/src/reqlan-idea-refactor.ts