Source file src/pkg/runtime/type.go
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.
4
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.
11 */
12
13 package runtime
14
15 import "unsafe"
16
17 type commonType struct {
18 size uintptr
19 hash uint32
20 _ uint8
21 align uint8
22 fieldAlign uint8
23 kind uint8
24 alg *uintptr
25 string *string
26 *uncommonType
27 ptrToThis *interface{}
28 }
29
30 type _method struct {
31 name *string
32 pkgPath *string
33 mtyp *interface{}
34 typ *interface{}
35 ifn unsafe.Pointer
36 tfn unsafe.Pointer
37 }
38
39 type uncommonType struct {
40 name *string
41 pkgPath *string
42 methods []_method
43 }
44
45 type _imethod struct {
46 name *string
47 pkgPath *string
48 typ *interface{}
49 }
50
51 type interfaceType struct {
52 commonType
53 methods []_imethod
54 }