add some new helper methods

This commit is contained in:
Matthew Kanwisher 2013-08-29 17:29:22 -04:00
parent 6de2878785
commit d59371c359
1 changed files with 21 additions and 1 deletions

22
node.go
View File

@ -27,7 +27,7 @@ var IndentPrefix = ""
type Attr struct {
Name xml.Name // Attribute namespace and name.
Value string // Attribute value.
Value string // Attribute value.
}
type Node struct {
@ -395,6 +395,26 @@ func rec_SelectNodes(cn *Node, namespace, name string, list *[]*Node, recurse bo
}
}
func (this *Node) RemoveNameSpace() {
this.Name.Space = ""
}
func (this *Node) SetAttr(name, value string) {
for _, v := range this.Attributes {
if name == v.Name.Local {
v.Value = value
return
}
}
//Add
attr := new(Attr)
attr.Name.Local = name
attr.Name.Space = ""
attr.Value = value
this.Attributes = append(this.Attributes, attr)
return
}
// Convert node to appropriate []byte representation based on it's @Type.
// Note that NT_ROOT is a special-case empty node used as the root for a
// Document. This one has no representation by itself. It merely forwards the