Lines Matching defs:Type

21 	Type() *Type  methodSpec
139 type Type struct { struct
157 extra interface{}
160 width int64 // valid if Align > 0
163 methods Fields
165 allMethods Fields
168 nod Object
170 underlying *Type
173 cache struct {
178 sym *Sym // symbol containing name, for named types
179 vargen int32 // unique name for OTYPE/ONAME
181 kind Kind // kind of type
182 … the required alignment of this type, in bytes (0 means Width and Align have not yet been computed)
184 flags bitset8
194 rparams *[]*Type
199 origSym *Sym
202 func (*Type) CanBeAnSSAAux() {}
215 func (t *Type) NotInHeap() bool { return t.flags&typeNotInHeap != 0 }
216 func (t *Type) Broke() bool { return t.flags&typeBroke != 0 }
217 func (t *Type) Noalg() bool { return t.flags&typeNoalg != 0 }
218 func (t *Type) Deferwidth() bool { return t.flags&typeDeferwidth != 0 }
219 func (t *Type) Recur() bool { return t.flags&typeRecur != 0 }
220 func (t *Type) HasTParam() bool { return t.flags&typeHasTParam != 0 }
221 func (t *Type) IsShape() bool { return t.flags&typeIsShape != 0 }
222 func (t *Type) HasShape() bool { return t.flags&typeHasShape != 0 }
224 func (t *Type) SetNotInHeap(b bool) { t.flags.set(typeNotInHeap, b) }
225 func (t *Type) SetBroke(b bool) { t.flags.set(typeBroke, b) }
226 func (t *Type) SetNoalg(b bool) { t.flags.set(typeNoalg, b) }
227 func (t *Type) SetDeferwidth(b bool) { t.flags.set(typeDeferwidth, b) }
228 func (t *Type) SetRecur(b bool) { t.flags.set(typeRecur, b) }
231 func (t *Type) SetHasTParam(b bool) { t.flags.set(typeHasTParam, b); t.flags.set(typeNoalg, b) }
234 func (t *Type) SetIsShape(b bool) { t.flags.set(typeIsShape, b) }
235 func (t *Type) SetHasShape(b bool) { t.flags.set(typeHasShape, b) }
238 func (t *Type) Kind() Kind { return t.kind }
241 func (t *Type) Sym() *Sym { return t.sym }
242 func (t *Type) SetSym(sym *Sym) { t.sym = sym }
246 func (t *Type) OrigSym() *Sym { return t.origSym }
247 func (t *Type) SetOrigSym(sym *Sym) { t.origSym = sym }
250 func (t *Type) Underlying() *Type { return t.underlying }
253 func (t *Type) SetNod(n Object) {
263 func (t *Type) Pos() src.XPos {
270 func (t *Type) RParams() []*Type {
277 func (t *Type) SetRParams(rparams []*Type) {
299 func (t *Type) IsBaseGeneric() bool {
305 func (t *Type) IsInstantiatedGeneric() bool {
313 func (t *Type) IsFullyInstantiated() bool {
328 func (t *Type) Pkg() *Pkg {
353 func (t *Type) MapType() *Map {
365 func (t *Type) ForwardType() *Forward {
386 func (t *Type) FuncType() *Func {
415 func (t *Type) StructType() *Struct {
460 func (t *Type) ChanType() *Chan {
499 Type *Type // field type member
627 func NewArray(elem *Type, bound int64) *Type {
644 func NewSlice(elem *Type) *Type {
668 func NewChan(elem *Type, dir ChanDir) *Type {
682 func NewTuple(t1, t2 *Type) *Type {
695 func newResults(types []*Type) *Type {
701 func NewResults(types []*Type) *Type {
715 func NewMap(k, v *Type) *Type {
735 func NewPtr(elem *Type) *Type {
767 func NewChanArgs(c *Type) *Type {
774 func NewFuncArgs(f *Type) *Type {
780 func NewField(pos src.XPos, sym *Sym, typ *Type) *Field {
795 func SubstAny(t *Type, types *[]*Type) *Type {
878 func (t *Type) copy() *Type {
923 func (t *Type) wantEtype(et Kind) {
929 func (t *Type) Recvs() *Type { return t.FuncType().Receiver }
930 func (t *Type) TParams() *Type { return t.FuncType().TParams }
931 func (t *Type) Params() *Type { return t.FuncType().Params }
932 func (t *Type) Results() *Type { return t.FuncType().Results }
934 func (t *Type) NumRecvs() int { return t.FuncType().Receiver.NumFields() }
935 func (t *Type) NumTParams() int { return t.FuncType().TParams.NumFields() }
936 func (t *Type) NumParams() int { return t.FuncType().Params.NumFields() }
937 func (t *Type) NumResults() int { return t.FuncType().Results.NumFields() }
940 func (t *Type) IsVariadic() bool {
946 func (t *Type) Recv() *Field {
972 func (t *Type) Key() *Type {
979 func (t *Type) Elem() *Type {
997 func (t *Type) ChanArgs() *Type {
1003 func (t *Type) FuncArgs() *Type {
1009 func (t *Type) IsFuncArgStruct() bool {
1016 func (t *Type) Methods() *Fields {
1022 func (t *Type) AllMethods() *Fields {
1034 func (t *Type) SetAllMethods(fs []*Field) {
1039 func (t *Type) Fields() *Fields {
1045 func (t *Type) Field(i int) *Field {
1051 func (t *Type) FieldSlice() []*Field {
1056 func (t *Type) SetFields(fields []*Field) {
1082 func (t *Type) SetInterface(methods []*Field) {
1089 func (t *Type) ArgWidth() int64 {
1094 func (t *Type) Size() int64 {
1105 func (t *Type) Alignment() int64 {
1110 func (t *Type) SimpleString() string {
1132 func (t *Type) Compare(x *Type) Cmp {
1179 func (t *Type) cmp(x *Type) Cmp {
1391 func (t *Type) IsKind(et Kind) bool {
1395 func (t *Type) IsBoolean() bool {
1414 func (t *Type) ToUnsigned() *Type {
1421 func (t *Type) IsInteger() bool {
1429 func (t *Type) IsSigned() bool {
1437 func (t *Type) IsUnsigned() bool {
1445 func (t *Type) IsFloat() bool {
1449 func (t *Type) IsComplex() bool {
1455 func (t *Type) IsPtr() bool {
1460 func (t *Type) IsPtrElem() bool {
1465 func (t *Type) IsUnsafePtr() bool {
1470 func (t *Type) IsUintptr() bool {
1479 func (t *Type) IsPtrShaped() bool {
1485 func (t *Type) HasNil() bool {
1493 func (t *Type) IsString() bool {
1497 func (t *Type) IsMap() bool {
1501 func (t *Type) IsChan() bool {
1505 func (t *Type) IsSlice() bool {
1509 func (t *Type) IsArray() bool {
1513 func (t *Type) IsStruct() bool {
1517 func (t *Type) IsInterface() bool {
1521 func (t *Type) IsUnion() bool {
1525 func (t *Type) IsTypeParam() bool {
1530 func (t *Type) IsEmptyInterface() bool {
1538 func (t *Type) IsScalar() bool {
1548 func (t *Type) PtrTo() *Type {
1552 func (t *Type) NumFields() int {
1558 func (t *Type) FieldType(i int) *Type {
1574 func (t *Type) FieldOff(i int) int64 {
1577 func (t *Type) FieldName(i int) string {
1581 func (t *Type) NumElem() int64 {
1599 func (t *Type) NumComponents(countBlank componentsIncludeBlankFields) int64 {
1622 func (t *Type) SoleComponent() *Type {
1643 func (t *Type) ChanDir() ChanDir {
1648 func (t *Type) IsMemory() bool {
1659 func (t *Type) IsFlags() bool { return t == TypeFlags }
1660 func (t *Type) IsVoid() bool { return t == TypeVoid }
1661 func (t *Type) IsTuple() bool { return t.kind == TTUPLE }
1662 func (t *Type) IsResults() bool { return t.kind == TRESULTS }
1665 func (t *Type) IsUntyped() bool {
1681 func (t *Type) HasPointers() bool {
1726 func (t *Type) Obj() Object {
1744 func (t *Type) SetVargen() {
1754 func (t *Type) SetUnderlying(underlying *Type) {
1865 func (t *Type) Index() int {
1871 func (t *Type) SetIndex(i int) {
1877 func (t *Type) SetBound(bound *Type) {
1883 func (t *Type) Bound() *Type {
1890 func (t *Type) IsImplicit() bool {
1896 func (t *Type) MarkImplicit() {
1903 func NewUnion(terms []*Type, tildes []bool) *Type {
1923 func (t *Type) NumTerms() int {
1930 func (t *Type) Term(i int) (*Type, bool) {
2023 func IsReflexive(t *Type) bool {
2069 func IsDirectIface(t *Type) bool {
2099 func IsInterfaceMethod(f *Type) bool {
2107 func IsMethodApplicable(t *Type, m *Field) bool {
2130 func ReceiverBaseType(t *Type) *Type {
2162 func FloatForComplex(t *Type) *Type {
2173 func ComplexForFloat(t *Type) *Type {
2184 func TypeSym(t *Type) *Sym {
2195 func TypeSymName(t *Type) string {