/** * Tae Won Ha - http://taewon.de - @hataewon * See LICENSE */ import Foundation class Token: Equatable {} func == (left: Token, right: Token) -> Bool { return left === right } func ==(left: FileItem, right: FileItem) -> Bool { return left.url == right.url } class FileItem : CustomStringConvertible, Hashable { let url: URL let isDir: Bool let isHidden: Bool let isPackage: Bool var hashValue: Int { return url.hashValue } /// When nil, then it has never been fnmatch'ed. weak var ignoreToken: Token? var ignore = false var needsScanChildren = false var childrenScanned = false var children: [FileItem] = [] var description: String { return "