Skip to content

Files

Latest commit

 

History

History
73 lines (54 loc) · 1.08 KB

overridden_super_call.md

File metadata and controls

73 lines (54 loc) · 1.08 KB

Pattern: Missing super call for overridden method

Issue: -

Description

Some overridden methods should always call super.

Examples of correct code:

class VC: UIViewController {
	override func viewWillAppear(_ animated: Bool) {
		super.viewWillAppear(animated)
	}
}


class VC: UIViewController {
	override func viewWillAppear(_ animated: Bool) {
		self.method1()
		super.viewWillAppear(animated)
		self.method2()
	}
}


class VC: UIViewController {
	override func loadView() {
	}
}


class Some {
	func viewWillAppear(_ animated: Bool) {
	}
}


class VC: UIViewController {
	override func viewDidLoad() {
		defer {
			super.viewDidLoad()
		}
	}
}

Examples of incorrect code:

class VC: UIViewController {
	override func viewWillAppear(_ animated: Bool) {
		//Not calling to super
		self.method()
	}
}


class VC: UIViewController {
	override func viewWillAppear(_ animated: Bool) {
		super.viewWillAppear(animated)
		//Other code
		super.viewWillAppear(animated)
	}
}


class VC: UIViewController {
	override func didReceiveMemoryWarning() {
	}
}