contravariance

contravariance

文章 0 浏览 6

解决界面的解决方法,包括< tin扩展了t>,t>,x []类型参数

假设我们有这样的界面: public interface Foo { void encode(TIn value) T decode() } 我在代码库中使用了很多foo,但是我想添加 tin扩展t 以使其更…

悲歌长辞 2025-02-07 12:59:04 2 0

Scala:函数图上的函数图

给定以下代码 sealed trait Fruit case class Apple(color: String) extends Fruit case class Orange(color: String) extends Fruit def getAppleCol…

放低过去 2025-02-03 20:27:28 2 0

使用逆向iqualityComparer< t>调用通用函数

我正在尝试组合几个软件包。包含所有特定结构的单位和Microsoft MVVM,可以使用 inotifypropertychanged 进行一些不错的 set< t> 函数。这些 …

§普罗旺斯的薰衣草 2025-01-27 23:18:30 2 0

违反类型在Golang 1.18中如何与仿制药一起使用?

在Golang 1.18中,我想定义一个函数,如下所示: func Pipe[A, T1, T2 any](left func(A) T1, right func(T1) T2) func(A) T2 { return func(a A) T2 …

烟燃烟灭 2025-01-25 12:23:49 2 0

在Java中,为什么AREN' t默认函数与返回类型的协变,而与参数类型相反

请查看以下代码, 如果函数与参数类型违反了函数,则该编译器会依据,因此编译器会投诉: // contravariant with the parameter type final Function …

岁月如刀 2025-01-21 18:58:56 3 0

打字稿中的通用约束违反不相容性

我正在尝试将标记的联合建模为数据。 首先,我创建一个 Tagged 实用程序类型,以表示与标记字段相交的任何内容: type Tagged = T & { _tag: With }; …

被你宠の有点坏 2025-01-18 03:09:40 4 0

突变会像打破协方差一样破坏违反性吗?

变异的协变容器是不健全的。 例如,在不使用任何特定语言的情况下, interface Pet; class Cat extends Pet { meow(); } class Dog extends Pet { woo…

半边脸i 2025-01-17 19:57:13 3 0

逆变接口方法调度/选择 C#

考虑以下代码: interface ITest { void DoTest(T instance); } class A {} class B : A {} class C : B {} class Test : ITest, ITest { void ITest.…

╄→承喏 2025-01-16 16:09:46 2 0

类型参数的 C# 方差注释,约束为值类型

在 C# 中,可以向类型参数添加方差注释,并限制为值类型: interface IFoo where T : struct { void Boo(T x); } 如果方差注释在这种情况下完全没有意…

反话 2025-01-06 17:48:15 6 0

为什么 Haskell 中没有很多关于协变和逆变的讨论(相对于 Scala 或 C#)?

我知道什么是类型的协变和逆变。我的问题是,为什么我在 Haskell(相对于 Scala)的研究中还没有遇到过对这些概念的讨论? 与 Scala 或 C# 相比,Hask…

那小子欠揍 2025-01-06 00:06:08 5 0

协变、逆变和消除多余的类型参数

给定以下类层次结构: abstract class A { } abstract class B { } abstract class C { } abstract class D where TA : A where TB : B where TC : C …

初吻给了烟 2025-01-05 17:02:54 4 0

如何使用逆变参数将泛型接口转换为基类型?

我正在尝试开发一个通用命令处理器。我想创建实现给定接口的命令处理程序类。我将使用控制反转根据收到的命令类型动态创建适当类的实例。然后我想以通…

萧瑟寒风 2025-01-05 10:35:56 5 0

用简单的英语解释协变、不变和逆变?

今天,我读了一些关于Java中的协变、逆变(和不变性)的文章。我阅读了英语和德语维基百科文章,以及 IBM 的其他一些博客文章和文章。 但我对这些术语…

む无字情书 2024-12-21 02:44:01 6 0

是什么意思?意思是?

Resharper 建议从 更改 interface IModelMapper { TTo Map(TFrom input); } 为 interface IModelMapper 所以我调查了一下并结束了阅读这篇文章(通过…

心在旅行 2024-12-18 21:43:08 6 0

是否存在具有继承的静态类型编程语言,其中方法参数是逆变的?

从理论上讲,用参数是父类中参数的超类型的方法覆盖子类中父类的方法是合理的,例如: class T def foo(s: String) = ... class S override def foo(a…

恏ㄋ傷疤忘ㄋ疼 2024-12-16 20:19:13 4 0
更多

推荐作者

alipaysp_snBf0MSZIv

文章 0 评论 0

梦断已成空

文章 0 评论 0

瞎闹

文章 0 评论 0

寄意

文章 0 评论 0

似梦非梦

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文