blob: 8e19e5dbade585eaf654be1ce6d230b8dcdfc866 [file]
# package pkg
Package pkg has every form of declaration.
### Heading {#hdr-Heading}
Search [Google](https://google.com) for details.
### Links {#hdr-Links}
- pkgsite repo, [https://go.googlesource.com/pkgsite](https://go.googlesource.com/pkgsite)
- Play with Go, [https://play-with-go.dev](https://play-with-go.dev)
## Constants
```go
const (
X = 1
Y = 2
)
```
Several constants.
```go
const C = 1
```
C is a shorthand for 1.
## Variables
```go
var V = 2
```
V is a variable.
## Functions
```go
func Add(x int) int
```
Add adds 1 to x.
```go
func F()
```
F is a function.
## Types
```go
type A int
```
```go
type B bool
```
```go
type I1 interface {
M1()
}
```
I1 is an interface.
```go
type I2 interface {
I1
M2()
}
```
```go
type S1 struct {
F int // field
}
```
S1 is a struct.
```go
type S2 struct {
S1
G int
}
```
S2 is another struct.
```go
type T int
```
T is a type.
```go
const CT T = 3
```
CT is a typed constant. They appear after their type.
```go
func TF() T
```
TF is a constructor for T.
```go
func (T) M()
```
M is a method of T. BUG(xxx): this verifies that notes are rendered.