added SelectNodesDirect function
This commit is contained in:
parent
89d27a9dee
commit
1145e04eb0
3 changed files with 57 additions and 8 deletions
13
node.go
13
node.go
|
@ -397,6 +397,19 @@ func (this *Node) SelectNodes(namespace, name string) []*Node {
|
|||
return list
|
||||
}
|
||||
|
||||
// Select multiple nodes directly under this node, by name.
|
||||
func (this *Node) SelectNodesDirect(namespace, name string) []*Node {
|
||||
list := make([]*Node, 0, 16)
|
||||
|
||||
for _, v := range this.Children {
|
||||
if (namespace == "*" || v.Name.Space == namespace) && (name == "*" || v.Name.Local == name) {
|
||||
list = append(list, v)
|
||||
}
|
||||
}
|
||||
|
||||
return list
|
||||
}
|
||||
|
||||
// Select multiple nodes by name
|
||||
func (this *Node) SelectNodesRecursive(namespace, name string) []*Node {
|
||||
list := make([]*Node, 0, 16)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue