summaryrefslogtreecommitdiff
path: root/src/runtime/typekind.h
blob: 39cd45c2e9f8be60488d04fa2e1c4d8ab1ae5c3a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Copyright 2012 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.

// Must match runtime and reflect.
// Included by cmd/gc.

enum {
	KindBool = 1,
	KindInt,
	KindInt8,
	KindInt16,
	KindInt32,
	KindInt64,
	KindUint,
	KindUint8,
	KindUint16,
	KindUint32,
	KindUint64,
	KindUintptr,
	KindFloat32,
	KindFloat64,
	KindComplex64,
	KindComplex128,
	KindArray,
	KindChan,
	KindFunc,
	KindInterface,
	KindMap,
	KindPtr,
	KindSlice,
	KindString,
	KindStruct,
	KindUnsafePointer,

	KindDirectIface = 1 << 5,
	KindGCProg      = 1 << 6, // Type.gc points to GC program
	KindNoPointers  = 1 << 7,
	KindMask        = (1 << 5) - 1,
};