Giant blob of minor changes
[dotfiles/.git] / .config / coc / extensions / coc-go-data / tools / pkg / mod / golang.org / x / tools@v0.0.0-20201105173854-bc9fc8d8c4bc / internal / lsp / testdata / callhierarchy / callhierarchy.go
1 // Copyright 2020 The Go Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style
3 // license that can be found in the LICENSE file.
4
5 package callhierarchy
6
7 import "golang.org/x/tools/internal/lsp/callhierarchy/outgoing"
8
9 func a() { //@mark(hierarchyA, "a")
10         D()
11 }
12
13 func b() { //@mark(hierarchyB, "b")
14         D()
15 }
16
17 // C is an exported function
18 func C() { //@mark(hierarchyC, "C")
19         D()
20         D()
21 }
22
23 // To test hierarchy across function literals
24 var x = func() { //@mark(hierarchyLiteral, "func"),mark(hierarchyLiteralOut, "x")
25         D()
26 }
27
28 // D is exported to test incoming/outgoing calls across packages
29 func D() { //@mark(hierarchyD, "D"),incomingcalls(hierarchyD, hierarchyA, hierarchyB, hierarchyC, hierarchyLiteral, incomingA),outgoingcalls(hierarchyD, hierarchyE, hierarchyF, hierarchyG, hierarchyLiteralOut, outgoingB)
30         e()
31         x()
32         F()
33         g()
34         outgoing.B()
35 }
36
37 func e() {} //@mark(hierarchyE, "e")
38
39 // F is an exported function
40 func F() {} //@mark(hierarchyF, "F")
41
42 func g() {} //@mark(hierarchyG, "g")