# A Rename reaches the other files open in the editor. A server renames in # the documents it has seen (zls's store), so before a query whose answer can # reach other files the client tells it of every open file of its language. # Here main.rs is opened by a look, asking the server nothing, and the rename # is asked from lib.rs: the mock answers in each document it was told of, so # the preview lists main.rs's two calls and lib.rs's definition. file lib.rs // main.rs\npub fn add(a: i32, b: i32) -> i32 {\n a + b\n}\n file main.rs mod lib;\n\nfn main() {\n let x = add(1, 2);\n let y = add(3, 4);\n let _ = x + y;\n}\n start 25 100 lib.rs wait 8000 pub fn add stable 700 20000 press right @main.rs 4 release right @main.rs 4 wait 8000 let x = add stable 700 15000 snap opened # into lib.rs's `add`, and rename it from there press left @add 5 release left @add 5 stable 400 5000 key space key l key r stable 400 5000 text sum key enter wait 10000 sum stable 700 15000 snap previewed