Rebase.
[official-gcc.git] / libgo / go / runtime / type.go
blob1211f22257540f5fbff154821233598cd6c346a4
1 // Copyright 2009 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.
5 /*
6 * Runtime type representation.
7 * This file exists only to provide types that 6l can turn into
8 * DWARF information for use by gdb. Nothing else uses these.
9 * They should match the same types in ../reflect/type.go.
10 * For comments see ../reflect/type.go.
13 package runtime
15 import "unsafe"
17 type rtype struct {
18 Kind uint8
19 align uint8
20 fieldAlign uint8
21 size uintptr
22 hash uint32
24 hashfn func(unsafe.Pointer, uintptr) uintptr
25 equalfn func(unsafe.Pointer, unsafe.Pointer, uintptr) bool
27 string *string
28 *uncommonType
29 ptrToThis *rtype
30 zero unsafe.Pointer
33 type _method struct {
34 name *string
35 pkgPath *string
36 mtyp *rtype
37 typ *rtype
38 tfn unsafe.Pointer
41 type uncommonType struct {
42 name *string
43 pkgPath *string
44 methods []_method
47 type _imethod struct {
48 name *string
49 pkgPath *string
50 typ *rtype
53 type interfaceType struct {
54 rtype
55 methods []_imethod