File: cursor_reuses_ast.swift

package info (click to toggle)
swiftlang 6.0.3-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 2,519,992 kB
  • sloc: cpp: 9,107,863; ansic: 2,040,022; asm: 1,135,751; python: 296,500; objc: 82,456; f90: 60,502; lisp: 34,951; pascal: 19,946; sh: 18,133; perl: 7,482; ml: 4,937; javascript: 4,117; makefile: 3,840; awk: 3,535; xml: 914; fortran: 619; cs: 573; ruby: 573
file content (23 lines) | stat: -rw-r--r-- 1,135 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// RUN: %empty-directory(%t)
// RUN: touch %t/empty.swift %t/func.swift

// Check that cursor info re-uses the underlying AST if it's able to based
// off edit snapshots.

// RUN: %sourcekitd-test \
// RUN:   -shell -- echo '## State 1' == \
// RUN:   -req=open -text-input %t/empty.swift %t/func.swift -- %t/func.swift == \
// RUN:   -req=edit -offset=0 -length=0 -replace="func foo() {}" -req-opts=enablesyntaxmap=0,enablesubstructure=0,enablediagnostics=0,syntactic_only=1 %t/func.swift -- %t/func.swift == \
// RUN:   -req=cursor -offset=5 %t/func.swift -- %t/func.swift == \
// RUN:   -shell -- echo '## State 2' == \
// RUN:   -req=edit -offset=0 -length=0 -replace="/* some comment */ " -req-opts=enablesyntaxmap=0,enablesubstructure=0,enablediagnostics=0,syntactic_only=1 %t/func.swift -- %t/func.swift == \
// RUN:   -req=cursor -offset=24 %t/func.swift -- %t/func.swift | %FileCheck %s

// CHECK: ## State 1
// CHECK: source.lang.swift.decl.function.free
// CHECK: foo()
// CHECK: DID REUSE AST CONTEXT: 0
// CHECK: ## State 2
// CHECK: source.lang.swift.decl.function.free
// CHECK: foo()
// CHECK: DID REUSE AST CONTEXT: 1