Skip to content

Commit 878d584

Browse files
committed
Merge branch 'develop'
2 parents ec7a69c + c5aba8e commit 878d584

File tree

3 files changed

+18
-3
lines changed

3 files changed

+18
-3
lines changed

R.swift/func.swift

+2-1
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,9 @@ func sanitizedSwiftName(name: String, lowercaseFirstCharacter: Bool = true) -> S
5858
var components = name.componentsSeparatedByString("-")
5959
let firstComponent = components.removeAtIndex(0)
6060
let swiftName = components.reduce(firstComponent) { $0 + $1.capitalizedString }
61+
let capitalizedSwiftName = lowercaseFirstCharacter ? swiftName.lowercaseFirstCharacter : swiftName
6162

62-
return lowercaseFirstCharacter ? swiftName.lowercaseFirstCharacter : swiftName
63+
return contains(SwiftKeywords, capitalizedSwiftName) ? "`\(capitalizedSwiftName)`" : capitalizedSwiftName
6364
}
6465

6566
func writeResourceFile(code: String, toFolderURL folderURL: NSURL) {

R.swift/types.swift

+12-2
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,18 @@ struct AssetFolder {
156156
init(url: NSURL, fileManager: NSFileManager) {
157157
name = url.filename!
158158

159-
let contents = fileManager.contentsOfDirectoryAtURL(url, includingPropertiesForKeys: nil, options: NSDirectoryEnumerationOptions.SkipsHiddenFiles, error: nil) as! [NSURL]
160-
imageAssets = contents.map { $0.filename! }
159+
// Browse asset directory recursively and list only the assets folders
160+
var assets = [NSURL]()
161+
let enumerator = fileManager.enumeratorAtURL(url, includingPropertiesForKeys: nil, options: .SkipsHiddenFiles, errorHandler: nil)
162+
if let enumerator = enumerator {
163+
for file in enumerator {
164+
if let fileURL = file as? NSURL, pathExtension = fileURL.pathExtension where find(AssetExtensions, pathExtension) != nil {
165+
assets.append(fileURL)
166+
}
167+
}
168+
}
169+
170+
imageAssets = assets.map { $0.filename! }
161171
}
162172
}
163173

R.swift/values.swift

+4
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,8 @@ let Ordinals = [
4343
(number: 20, word: "twentieth"),
4444
]
4545

46+
let AssetExtensions = ["appiconset", "launchimage", "imageset"]
47+
4648
let ElementNameToTypeMapping = [
4749
"viewController": Type._UIViewController,
4850
"glkViewController": Type(name: "GLKViewController"),
@@ -54,3 +56,5 @@ let ElementNameToTypeMapping = [
5456
"avPlayerViewController": Type(name: "AVPlayerViewController"),
5557
"collectionViewController": Type(name: "UICollectionViewController"),
5658
]
59+
60+
let SwiftKeywords = ["class", "deinit", "enum", "extension", "func", "import", "init", "internal", "let", "operator", "private", "protocol", "public", "static", "struct", "subscript", "typealias", "var", "break", "case", "continue", "default", "do", "else", "fallthrough", "for", "if", "in", "return", "switch", "where", "while", "as", "dynamicType", "false", "is", "nil", "self", "Self", "super", "true", "__COLUMN__", "__FILE__", "__FUNCTION__", "__LINE__"]

0 commit comments

Comments
 (0)