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