func isString(t *types.Basic) bool { return t.Info()&types.IsString != 0 }
func isUnsigned(t *types.Basic) bool { return t.Info()&types.IsUnsigned != 0 }
func isNumeric(t *types.Basic) bool { return t.Info()&types.IsNumeric != 0 }
func isInteger(t *types.Basic) bool { return t.Info()&types.IsInteger != 0 }
func isFloat(t *types.Basic) bool { return t.Info()&types.IsFloat != 0 }
func isComplex(t *types.Basic) bool { return t.Info()&types.IsComplex != 0 }
func isBoolean(t *types.Basic) bool { return t.Info()&types.IsBoolean != 0 }