| // Copyright 2021 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| //go:build !typeparams |
| // +build !typeparams |
| |
| package ast |
| |
| import "go/token" |
| |
| type ( |
| // A FuncType node represents a function type. |
| FuncType struct { |
| Func token.Pos // position of "func" keyword (token.NoPos if there is no "func") |
| Params *FieldList // (incoming) parameters; non-nil |
| Results *FieldList // (outgoing) results; or nil |
| } |
| |
| // A TypeSpec node represents a type declaration (TypeSpec production). |
| TypeSpec struct { |
| Doc *CommentGroup // associated documentation; or nil |
| Name *Ident // type name |
| Assign token.Pos // position of '=', if any |
| Type Expr // *Ident, *ParenExpr, *SelectorExpr, *StarExpr, or any of the *XxxTypes |
| Comment *CommentGroup // line comments; or nil |
| } |
| ) |