38 lines
693 B
Swift
38 lines
693 B
Swift
func toString(_ value: Any?) -> String? {
|
|
if let value = value as? String {
|
|
return value
|
|
} else if let value = value as? CustomStringConvertible {
|
|
return value.description
|
|
}
|
|
|
|
return nil
|
|
}
|
|
|
|
func capitalise(_ value: Any?) -> Any? {
|
|
if let value = toString(value) {
|
|
return value.capitalized
|
|
}
|
|
|
|
return value
|
|
}
|
|
|
|
func uppercase(_ value: Any?) -> Any? {
|
|
if let value = toString(value) {
|
|
return value.uppercased()
|
|
}
|
|
|
|
return value
|
|
}
|
|
|
|
func lowercase(_ value: Any?) -> Any? {
|
|
if let value = toString(value) {
|
|
return value.lowercased()
|
|
}
|
|
|
|
return value
|
|
}
|
|
|
|
func defaultFilter(value: Any?, arguments: [Any?]) -> Any? {
|
|
return value ?? arguments.first as Any
|
|
}
|