From 11ae789f774bc8c7d2c67b21f9c827147aa344fa Mon Sep 17 00:00:00 2001 From: johnpatrickmorgan Date: Thu, 23 Feb 2023 23:41:37 +0000 Subject: [PATCH] Avoids explicitly unwrapping mirror --- Sources/NavigationBackport/DestinationBuilderHolder.swift | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Sources/NavigationBackport/DestinationBuilderHolder.swift b/Sources/NavigationBackport/DestinationBuilderHolder.swift index 9794d4f..e858d09 100644 --- a/Sources/NavigationBackport/DestinationBuilderHolder.swift +++ b/Sources/NavigationBackport/DestinationBuilderHolder.swift @@ -43,14 +43,14 @@ class DestinationBuilderHolder: ObservableObject { } assertionFailure("No view builder found for type \(key)") } else { - var mirror: Mirror? = Mirror(reflecting: base ?? typedData) - while mirror != nil { - let key = Self.identifier(for: mirror!.subjectType) + var possibleMirror: Mirror? = Mirror(reflecting: base ?? typedData) + while let mirror = possibleMirror { + let key = Self.identifier(for: mirror.subjectType) if let builder = builders[key], let output = builder(typedData) { return output } - mirror = mirror!.superclassMirror + possibleMirror = mirror.superclassMirror } assertionFailure("No view builder found for type \(type(of: base ?? typedData))") }