From 644687b885eb8a012dc113d79e39e561f1a0fd13 Mon Sep 17 00:00:00 2001 From: Ruslan Alikhamov Date: Sun, 20 Aug 2023 10:28:27 +0000 Subject: [PATCH] prefer DynamicMemberLookup over KVC --- Sources/Stencil/Variable.swift | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Sources/Stencil/Variable.swift b/Sources/Stencil/Variable.swift index 1948f4e..708fbe0 100644 --- a/Sources/Stencil/Variable.swift +++ b/Sources/Stencil/Variable.swift @@ -110,16 +110,16 @@ public struct Variable: Equatable, Resolvable { return resolve(bit: bit, collection: array) } else if let string = context as? String { return resolve(bit: bit, collection: string) + } else if let value = context as? DynamicMemberLookup { + return value[dynamicMember: bit] } else if let object = context as? NSObject { // NSKeyValueCoding - #if os(Linux) + #if canImport(ObjectiveC) return nil #else if object.responds(to: Selector(bit)) { return object.value(forKey: bit) } #endif - } else if let value = context as? DynamicMemberLookup { - return value[dynamicMember: bit] } else if let value = context { return Mirror(reflecting: value).getValue(for: bit) }