parsing of type strings. still missing: func, struct, interface, chan

R=rsc
DELTA=366  (337 added, 7 deleted, 22 changed)
OCL=17321
CL=17324
This commit is contained in:
Rob Pike 2008-10-16 16:38:33 -07:00
parent 1163b1db6f
commit 32b84d5a94
3 changed files with 352 additions and 28 deletions

View file

@ -11,23 +11,45 @@ import (
func main() {
var s string;
s = reflect.ToString(reflect.Int8); print(s, "\n");
s = reflect.ToString(reflect.Int16); print(s, "\n");
s = reflect.ToString(reflect.Int32); print(s, "\n");
s = reflect.ToString(reflect.Int64); print(s, "\n");
s = reflect.ToString(reflect.Uint8); print(s, "\n");
s = reflect.ToString(reflect.Uint16); print(s, "\n");
s = reflect.ToString(reflect.Uint32); print(s, "\n");
s = reflect.ToString(reflect.Uint64); print(s, "\n");
s = reflect.ToString(reflect.Float32); print(s, "\n");
s = reflect.ToString(reflect.Float64); print(s, "\n");
s = reflect.ToString(reflect.Float80); print(s, "\n");
s = reflect.ToString(reflect.String); print(s, "\n");
if false {
s = reflect.ToString(reflect.Int8); print(s, "\n");
s = reflect.ToString(reflect.Int16); print(s, "\n");
s = reflect.ToString(reflect.Int32); print(s, "\n");
s = reflect.ToString(reflect.Int64); print(s, "\n");
s = reflect.ToString(reflect.Uint8); print(s, "\n");
s = reflect.ToString(reflect.Uint16); print(s, "\n");
s = reflect.ToString(reflect.Uint32); print(s, "\n");
s = reflect.ToString(reflect.Uint64); print(s, "\n");
s = reflect.ToString(reflect.Float32); print(s, "\n");
s = reflect.ToString(reflect.Float64); print(s, "\n");
s = reflect.ToString(reflect.Float80); print(s, "\n");
s = reflect.ToString(reflect.String); print(s, "\n");
s = reflect.ToString(reflect.PtrInt8); print(s, "\n");
s = reflect.ToString(reflect.ArrayFloat32); print(s, "\n");
s = reflect.ToString(reflect.MapStringInt16); print(s, "\n");
s = reflect.ToString(reflect.ChanArray); print(s, "\n");
s = reflect.ToString(reflect.Structure); print(s, "\n");
s = reflect.ToString(reflect.Function); print(s, "\n");
s = reflect.ToString(reflect.PtrInt8); print(s, "\n");
s = reflect.ToString(reflect.PtrPtrInt8); print(s, "\n");
s = reflect.ToString(reflect.ArrayFloat32); print(s, "\n");
s = reflect.ToString(reflect.MapStringInt16); print(s, "\n");
s = reflect.ToString(reflect.ChanArray); print(s, "\n");
s = reflect.ToString(reflect.Structure); print(s, "\n");
s = reflect.ToString(reflect.Function); print(s, "\n");
}
var t reflect.Type;
t = reflect.ParseTypeString("int8");
s = reflect.ToString(t); print(s, "\n");
t = reflect.ParseTypeString("**int8");
s = reflect.ToString(t); print(s, "\n");
t = reflect.ParseTypeString("**P.integer");
s = reflect.ToString(t); print(s, "\n");
t = reflect.ParseTypeString("[32]int32");
s = reflect.ToString(t); print(s, "\n");
t = reflect.ParseTypeString("[]int8");
s = reflect.ToString(t); print(s, "\n");
t = reflect.ParseTypeString("map[string]int32");
s = reflect.ToString(t); print(s, "\n");
}