internal/lib/reflect: type.Name type.Elem

This commit is contained in:
visualfc
2024-09-05 20:59:10 +08:00
parent 9cc71b320b
commit e085fd1d57

View File

@@ -539,25 +539,22 @@ func pkgPathFor(t *abi.Type) string {
} }
func (t *rtype) Name() string { func (t *rtype) Name() string {
/* if !t.t.HasName() {
if !t.t.HasName() { return ""
return "" }
s := t.String()
i := len(s) - 1
sqBrackets := 0
for i >= 0 && (s[i] != '.' || sqBrackets != 0) {
switch s[i] {
case ']':
sqBrackets++
case '[':
sqBrackets--
} }
s := t.String() i--
i := len(s) - 1 }
sqBrackets := 0 return s[i+1:]
for i >= 0 && (s[i] != '.' || sqBrackets != 0) {
switch s[i] {
case ']':
sqBrackets++
case '[':
sqBrackets--
}
i--
}
return s[i+1:]
*/
panic("todo: reflect.rtype.Name")
} }
func nameFor(t *abi.Type) string { func nameFor(t *abi.Type) string {
@@ -581,9 +578,7 @@ func elem(t *abi.Type) *abi.Type {
if et != nil { if et != nil {
return et return et
} }
// TODO(xsw): panic("reflect: Elem of invalid type " + stringFor(t))
// panic("reflect: Elem of invalid type " + stringFor(t))
panic("todo: reflect.elem")
} }
func (t *rtype) Elem() Type { func (t *rtype) Elem() Type {