File: complete_docbrief_package.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 (43 lines) | stat: -rw-r--r-- 1,327 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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
// RUN: %empty-directory(%t)
// RUN: %empty-directory(%t/Modules)
// RUN: split-file --leading-lines %s %t

// RUN: %target-swift-frontend \
// RUN:     -emit-module \
// RUN:     -module-name DocBriefTest \
// RUN:     -package-name DocPackage \
// RUN:     -emit-module-path %t/Modules/DocBriefTest.swiftmodule \
// RUN:     -emit-module-source-info-path %t/Modules/DocBriefTest.swiftsourceinfo \
// RUN:     %t/Module.swift

//--- Module.swift
package protocol P {
  /// This is a doc comment of P.foo
  ///
  /// Do whatever.
  func foo()
}

package struct S: P {
  public init() {}
  public func foo() {}
}

//--- User.swift
package import DocBriefTest

func test() {
  // RUN: %sourcekitd-test -req=complete -pos=%(line+1):7 %t/User.swift -- %t/User.swift -I %t/Modules -target %target-triple -module-name DocBriefUser -package-name DocPackage | %FileCheck %s -check-prefix=CHECK
  S().foo()

  // CHECK: {
  // CHECK:   key.results: [
  // CHECK-NEXT:     {
  // CHECK-NEXT:       key.kind: source.lang.swift.decl.function.method.instance,
  // CHECK-NEXT:       key.name: "foo()",
  // CHECK-NEXT:       key.description: "foo()",
  // CHECK-NEXT:       key.typename: "Void",
  // CHECK-NEXT:       key.doc.brief: "This is a doc comment of P.foo",
  // CHECK:            key.sourcetext: "foo()"
  // CHECK:          }
}