Optimisation

This commit is contained in:
Alexei Anoshenko 2026-09-13 10:57:43 +03:00
parent 34478c5ff1
commit d6d243458c
1 changed files with 15 additions and 11 deletions

14
data.go
View File

@ -186,9 +186,14 @@ func (object *dataObject) PropertyByTag(tag string) DataNode {
func (object *dataObject) RemovePropertyByTag(tag string) DataNode { func (object *dataObject) RemovePropertyByTag(tag string) DataNode {
if object.property != nil { if object.property != nil {
for i, node := range object.property { index := slices.IndexFunc(object.property, func(node DataNode) bool {
if node.Tag() == tag { return node.Tag() == tag
switch i { })
if index >= 0 {
node := object.property[index]
switch index {
case 0: case 0:
object.property = object.property[1:] object.property = object.property[1:]
@ -196,13 +201,12 @@ func (object *dataObject) RemovePropertyByTag(tag string) DataNode {
object.property = object.property[:len(object.property)-1] object.property = object.property[:len(object.property)-1]
default: default:
object.property = append(object.property[:i], object.property[i+1:]...) object.property = append(object.property[:index], object.property[index+1:]...)
} }
return node return node
} }
} }
}
return nil return nil
} }