This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
extension Car { | |
// Execution Functions | |
private func turnExteriorLightsOn() { | |
leftFrontLight .isOn = true | |
rightFrontLight.isOn = true | |
leftBackLight .isOn = true | |
rightBackLight .isOn = true | |
} | |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class Car: Vehicle { | |
// Informer Functions | |
override func engineStarted() { | |
super.engineStarted() | |
handleCarStarted() | |
} | |
// Management Functions | |
private func handleCarStarted() { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private var positionedVerticaly: Bool { | |
return view.frame.width/2 == centerX | |
} | |
if positionedVerticaly | |
if positionedVerticaly && positionedHorizontally | |
VS | |
if isPositionedVerticaly | |
if isPositionedVerticaly && isPositionedHorizontally |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public var isPositionedVerticaly: Bool { | |
return positionedVerticaly | |
} | |
if containerView.isPositionedVerticaly |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
delegate.dataHasUpdated() | |
func dataHasUpdated() { | |
//Someone is informing you that something has happened | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
private func locateCorrectFormat(for dateString: String) -> Date { | |
for dateFormat in DateFormats.allCases { | |
if let date = parse(dateString, using: dateFormat) { | |
return date | |
} | |
} | |
return useRegexToExtractDate(from: dateString) | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
func parseDate(from string: String?) -> Date { | |
guard let dateString = string else { return Date() } | |
if let date = self.date(from: dateString) { | |
return date | |
} | |
else { | |
return locateCorrectFormat(for: dateString) | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
extension DateFormatter | |
{ | |
private enum DateFormats: String, CaseIterable { | |
case basicDate = "yyyy-MM-dd" | |
case basicDateWithTime_Without_Miliseconds = "yyyy-MM-dd HH:mm:ss" | |
case basicDateWithTime_With_Miliseconds = "yyyy-MM-dd HH:mm:ss.SSSSS" | |
case basicDateWithTime_WithX_Miliseconds = "yyyy-MM-dd HH:mm:ss.SSSSx" | |
var withTimeStamp: String { | |
switch self { |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
if let date = dateFormatter.parseDate(from: string) { | |
postUploadDate = date | |
} |