internal/code/alias_1.23.go (10 lines of code) (raw):

//go:build go1.23 package code import ( "go/types" ) // Unalias unwraps an alias type func Unalias(t types.Type) types.Type { if p, ok := t.(*types.Pointer); ok { // If the type come from auto-binding, // it will be a pointer to an alias type. // (e.g: `type Cursor = entgql.Cursor[int]`) // *ent.Cursor is the type we got from auto-binding. return types.NewPointer(Unalias(p.Elem())) } return types.Unalias(t) }