クロージャの抽出
クロージャの抽出リファクタリングは、選択されたコードのチャンクからクロージャを作成します。

クロージャを抽出する
エディターで、クロージャーに抽出する式を選択します。
Ctrl+Alt+Shift+T を押してクロージャの抽出を選択します。または、メインメニューまたはコンテキストメニューから を選択します。
抽出に使用できる式がいくつかある場合は、表示されるリストから必要な式を選択して Enter を押します。
開いたダイアログで、新しいクロージャーの名前を入力し、必要に応じてパラメーターの名前と型を変更します。
Enter を押します。
コード例
前 | 後 |
|---|---|
private func performLogin() {
let email = self.textFieldEmail.text ?? ""
let isEmailValid = self.emailValidator.isEmailValid(email: email)
// To be extracted
textFieldEmail.textColor = isEmailValid ? UIColor.black : UIColor.red
}
|
private func performLogin() {
let email = self.textFieldEmail.text ?? ""
let isEmailValid = self.emailValidator.isEmailValid(email: email)
// Extracted closure
let setFiledStyle = { (isEmailValid: Bool) in
self.textFieldEmail.textColor = isEmailValid ? UIColor.black : UIColor.red
}
setFiledStyle(isEmailValid)
}
|