mirror of https://github.com/golang/go.git
79 lines
970 B
Go
79 lines
970 B
Go
package semantictokens //@ semantic("")
|
|
|
|
import (
|
|
_ "encoding/utf8"
|
|
utf "encoding/utf8"
|
|
"fmt" //@ semantic("fmt")
|
|
. "fmt"
|
|
"unicode/utf8"
|
|
)
|
|
|
|
var (
|
|
a = fmt.Print
|
|
b []string = []string{"foo"}
|
|
c1 chan int
|
|
c2 <-chan int
|
|
c3 = make([]chan<- int)
|
|
b = A{X: 23}
|
|
m map[bool][3]*float64
|
|
)
|
|
|
|
const (
|
|
xx F = iota
|
|
yy = xx + 3
|
|
zz = ""
|
|
ww = "not " + zz
|
|
)
|
|
|
|
type A struct {
|
|
X int `foof`
|
|
}
|
|
type B interface {
|
|
A
|
|
sad(int) bool
|
|
}
|
|
|
|
type F int
|
|
|
|
func (a *A) f() bool {
|
|
var z string
|
|
x := "foo"
|
|
a(x)
|
|
y := "bar" + x
|
|
switch z {
|
|
case "xx":
|
|
default:
|
|
}
|
|
select {
|
|
case z := <-c3[0]:
|
|
default:
|
|
}
|
|
for k, v := range m {
|
|
return (!k) && v[0] == nil
|
|
}
|
|
c2 <- A.X
|
|
w := b[4:]
|
|
j := len(x)
|
|
j--
|
|
return true
|
|
}
|
|
|
|
func g(vv ...interface{}) {
|
|
ff := func() {}
|
|
defer ff()
|
|
go utf.RuneCount("")
|
|
go utf8.RuneCount(vv.(string))
|
|
if true {
|
|
} else {
|
|
}
|
|
Never:
|
|
for i := 0; i < 10; {
|
|
break Never
|
|
}
|
|
_, ok := vv[0].(A)
|
|
if !ok {
|
|
switch x := vv[0].(type) {
|
|
}
|
|
}
|
|
}
|