问题标签 [equatable]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
460 浏览

swift - 在 Swift 中比较两个协议实例的相等性

这是交易,

我正在编写一个 SDK,我想将观察者声明为协议,而不是类或结构(它有点像“观察者/代表”混合体)。

我希望能够比较作为协议引用传入的两个参数,而不是它们实际上是 IRL 的具体类/结构。

我知道进行比较的“简单”方法是将协议限制为Hashableor Equatable,但我想避免给用户带来负担(这是一个 SDK)。

这是一个小操场,我的意思是:

不修边幅的部分是compareTypes(_: A, _: A). 我需要弄清楚如何在不进入“Hacksylvania”的情况下比较它们,我可以通过在每个实例中比较 AFunc() 的地址来做到这一点。

预期的输出是:

对于更“迅速”的方法有什么想法吗?我一定是只见树木不见森林。

0 投票
1 回答
416 浏览

ios - 比较单元测试中的 swift Type 值 - XCTAssertEqual vs ==

我试图在我的单元测试中比较 swift Type 值,并注意到 XCTAssertEqual 无法编译,而与 == 比较则可以正常编译。

XCTAssertEqual(MyStruct.self, MyStruct.self)--> 编译失败,出现错误“全局函数 'XCTAssertEqual( : :_:file:line:)' 要求 'MyStruct.Type' 符合 'Equatable'”

XCTAssertTrue(MyStruct.self == MyStruct.self)--> 编译正常

我想了解这两个比较之间有什么区别。

0 投票
1 回答
75 浏览

swift - 应用程序因错误而崩溃:无法推断通用参数“T”

我正在尝试从 UserDefault 获取可散列的自定义对象。我的自定义模型定义如下:

我的用户默认方法是:

我这样称呼它:

调用此方法时应用程序崩溃我不明白原因,错误是:

0 投票
1 回答
58 浏览

swift - 字符中的 == 是如何定义的?

我看到 "é" ( "\u{E9}", 1 个代码点) 和 "e" + 急性 ( "\u{65}\u{301}", 2 个代码点) 是相等的,这很棒。

for的文档继承自它的规则,并没有解释它的规则。另一方面,我环顾了附件#29,但运气不佳。Swift 是否实现了自己的逻辑?==CharacterEquatable

无论哪种情况,Swift 中的字符相等性是如何确定的?

0 投票
1 回答
1054 浏览

unit-testing - 颤振:比较两个对象并得到错误:预期:VenuesDetails:在单元测试中

我在单元测试中使用 Equatable 来比较 2 个对象。这是我从 Equatable 扩展的对象:

我编写此测试以从远程存储库获取数据:

test('应该在响应码为200(成功)时执行get请求', () async {

但在expect(result, venue);我得到这个错误:

我的错误在哪里使用Equatable

0 投票
2 回答
7427 浏览

ios - 协议类型“Any”的值不能符合“Equatable”;只有结构/枚举/类类型可以符合协议

协议类型“Any”的值不能符合“Equatable”;只有结构/枚举/类类型可以符合协议

值是类型“ANY”,因为它可以是 Int 或 String。所以无法实现 Equatable 协议。

0 投票
1 回答
55 浏览

ios - Swift 协议:我可以限制关联类型吗?

我有一套协议:

是否可以限制 SpaceInterpolatorProtocol 定义

而不是where在所有协议扩展中使用?

0 投票
2 回答
680 浏览

ios - 比较对象领域 Swift

我正在尝试比较 Swift 中的 2 个领域对象。

显然这些值是相等的。但对象不是。

我试图在对象类中实现 equatable 。但由于 Realm,Xcode 不喜欢它。

“ObjectClass”与协议“Equatable”的冗余一致性

如何将 lastObject 的变量与 currentObject 进行比较?我想有比检查每个对象的变量更好的方法。但我不知道它是什么。

对象等级:

0 投票
1 回答
302 浏览

if-statement - 如何在 SwiftUI 中比较三种颜色

我有三种颜色,我想比较它们。我应该让 Color 符合 Equatable 协议吗?

代码 :

0 投票
1 回答
749 浏览

flutter - Flutter 应用程序:无法返回类型为“Either”的值" from 方法,因为它的返回类型为 "Either"

无法弄清楚这一点 - 特别是 VSCode 和 Android Studio 中的类型错误告诉我类型是相同的。

错误:

版本:

在“执行”方法的返回语句中,此类中发生 Dart 分析器错误:

故障等级:

DailyThought类:

回购类: