refactor: 导表工具重构,增加部分特性,修复部分问题
1、增加测试用例; 2、支持多文件合并导表; 3、支持 "#" 开头忽略; 4、修复越界问题; 5、优化模板样式,增加模板规则说明;
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
package matrix
|
||||
|
||||
import (
|
||||
"github.com/kercylan98/minotaur/utils/generic"
|
||||
"github.com/kercylan98/minotaur/utils/geometry"
|
||||
)
|
||||
|
||||
@@ -60,6 +61,19 @@ func (slf *Matrix[T]) Get(x, y int) (value T) {
|
||||
return slf.m[geometry.CoordinateToPos(slf.w, x, y)]
|
||||
}
|
||||
|
||||
// GetExist 获取特定坐标的内容,如果不存在则返回 false
|
||||
func (slf *Matrix[T]) GetExist(x, y int) (value T, exist bool) {
|
||||
pos := geometry.CoordinateToPos(slf.w, x, y)
|
||||
if pos >= len(slf.m) {
|
||||
return
|
||||
}
|
||||
t := slf.m[pos]
|
||||
if generic.IsNil(t) {
|
||||
return
|
||||
}
|
||||
return slf.m[pos], true
|
||||
}
|
||||
|
||||
// GetWithPos 获取特定坐标的内容
|
||||
func (slf *Matrix[T]) GetWithPos(pos int) (value T) {
|
||||
return slf.m[pos]
|
||||
|
||||
Reference in New Issue
Block a user