我正在使用约束规则的泛型:
type LineParser[T []rune | string] struct {
}
我有这个结构体的泛型方法
func (it *LineParser[T]) Parser(line T)
在这个方法中,我想迭代这一行,但是我得到了这个错误:
无效操作:不能切片行(类型为T的变量受[]rune|string约束):T没有核心类型
有什么建议吗?
在迭代之前将line
的值转换为[]rune
的值。这样,方法的每个实例都将迭代相同的类型。
type LineParser[T []rune | string] struct {}
func (it *LineParser[T]) Parser(line T) {
for _, r := range []rune(line) {
// do something with the next rune
_ = r
}
}