Skip to content

Commit 5376bf0

Browse files
Added accessing attributes through subscript
1 parent 78e2da1 commit 5376bf0

File tree

2 files changed

+13
-3
lines changed

2 files changed

+13
-3
lines changed

Sources/XmlElement.swift

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,19 +11,29 @@ import Foundation
1111
open class XmlElement {
1212
open var name: String
1313
open var attributes: [String:String] = [:]
14-
open var text: String = "" //I guess this is ok.
14+
open var text: String
1515
open var children: [XmlElement] = []
1616
open var parent: XmlElement?
1717

18-
public init(name: String, xmlns: String? = nil) {
18+
public init(name: String, xmlns: String? = nil, text: String = "") {
1919
self.name = name
20+
self.text = text
2021
attributes["xmlns"] = xmlns
2122
}
2223

2324
open var xml: String {
2425
//TODO: generate compact xml
2526
return "<\(name)\(attributes.map({" \($0)=\"\($1)\" "}).joined())>\(text)\(children.map({ $0.description }).joined())</\(name)>"
2627
}
28+
29+
open subscript(key: String) -> String? {
30+
get {
31+
return attributes[key]
32+
}
33+
set {
34+
attributes[key] = newValue
35+
}
36+
}
2737
}
2838

2939
extension XmlElement: CustomStringConvertible {

Xml.swift.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'Xml.swift'
3-
s.version = '1.0.0'
3+
s.version = '1.1.0'
44
s.summary = 'An XMLParser wrapper for swift.'
55
s.homepage = 'https://github.com/BiAtoms/Xml.swift'
66
s.license = { :type => 'MIT', :file => 'LICENSE' }

0 commit comments

Comments
 (0)