type-inference相关内容

JDK8 类型推断问题

我正在尝试运行以下代码,由于类型推断,这些代码在 JDK8 下编译得很好: public static B 转换(A a) {返回 (B) 新 CB();}公共静态无效主(字符串 [] args){CA a = 新 CA();CB b = 转换(a);//这运行良好列表bl = Arrays.asList(b);//这也运行良好列表bl1 = Arrays.asList(conv ..
发布时间:2021-11-22 16:25:36 Java Web开发

在单个操作中解开可变数量的包装器类型

我有一个通用的包装器类型: public class Wrap;{公共 T 内容 { 得到;放;}} 我可以将任何对象包裹在包裹中或打开包裹对象: public static class WrapHelpers {公共静态包装Wrap(这个T内容){返回新的 Wrap{ 内容 = 内容 };}public static T Unwrap(this Wrapwra ..
发布时间:2021-09-11 19:57:35 C#/.NET

关于 SML 类型检查和推理的问题

首先,由于问题与学校项目有某种关系,我认为发布我的代码不合适.另外,正如我稍后解释的那样,我只有相关代码的修改版本. 我自己解释一下.我应该使用优先级队列来实现 Dijkstra 算法的一个版本.我认为这样做的一种简单的功能方法是定义一个带有输入队列和目标节点的 dijkstra 函数以及一个帮助函数来将与刚刚出队的列表元素相邻的节点入队.不幸的是,辅助函数没有进行类型检查 - 未解析的 F ..
发布时间:2021-09-11 19:57:32 其他开发

关于路径依赖类型的上下文边界和隐式参数列表的行为

我一直认为上下文边界和隐式参数列表的行为完全相同,但显然不是. 在下面的示例中,我希望 summon1[Int] 和 summon2[Int] 返回相同的类型,但它们没有.我希望 summon2[Int] 返回一个依赖于路径的类型,但它给了我一个类型投影.为什么? 欢迎使用 Ammonite Repl 2.2.0 (Scala 2.13.3 Java 11.0.2)@特质 Foo[A] { ..

如何从键而不是值推断类型参数?

我有一个表示有向图结构的类,它是通用的,具有一个类型参数 K extends string 用于节点名称.图是通过传递一个像 {a: ['b'], b: []} 这样的对象来构建的,在这个最小的例子中它代表了两个节点 a 和 b,一个边a → b. class Digraph{构造函数(只读邻接列表:记录){}getNeighbours(k: K): K[] {返回 this.adjacency ..
发布时间:2021-09-11 19:57:23 其他开发

使用函数接口确保参数但推断更具体的返回类型

我有一个函数签名,我需要一堆函数来遵循它,就像这样: type ActionCallback= (param1:SpecificType, param2:OtherType) =>承诺 基本上,参数的类型定义良好,它必须返回一个承诺,但承诺解析的内容取决于函数. 不必在每个回调中指定两个参数的类型,我只想指定符合 ActionCallback 的变量,以便推断参数类型: cons ..

lambda 函数的 Haskell 类型推断(在地图中)

示例 1 以下没有类型声明的定义会抛出错误: f :: Eq t =>(t,t) ->Bool -- 省略这一行会导致错误f = \(x,y) ->x==y (我知道这个函数可以写得更短,但这不是重点.) 示例 2 另一方面,在使用 map 的函数中使用 same lambda 函数确实可以工作而不会产生错误: g l = map (\(x,y) -> x==y) l ..
发布时间:2021-09-11 19:57:08 其他开发

scala 如何推断变量的类型?

我总是很想知道 Scala 如何总是正确推断类型.Scala 是如何实现的? scala>数值编号 = 5数量:整数 = 5标度>数值编号 = "5"数量:字符串 = 5 我知道在这里问这个问题可能很愚蠢,但我不知道答案.请赐教.谢谢! 解决方案 有几种方法可以推断变量的类型.主要使用基于逻辑理论的那些称为推理规则. 有很多论文解释了背后的理论.在这里,我举了一个很好的例子(使用 ..
发布时间:2021-09-11 19:57:05 其他开发

Scala 无法推断

我有一个非常简单的 Spark 代码截图,它在 Scala 2.11 上工作并在 2.12 之后停止编译. import spark.implicits._val ds = Seq(“val").toDF(“col1")ds.foreachPartition(part => {part.foreach(println)}) 它失败并出现错误: Error:(22, 12) value for ..
发布时间:2021-09-11 19:57:02 其他开发

在 for ... in 循环中输入推断

TypeScript 的推理非常好.但是,这个例子没有按预期工作,需要一个 //@ts-ignore. for (const p in obj) {if (p !== 'staticCounter' && p !== 'staticProperty') {//@ts-忽略删除对象[p];}} 没有忽略,我得到了错误 const p: string 元素隐式具有“任何"类型,因为'stri ..
发布时间:2021-09-11 19:57:00 其他开发

Scala 中的 PartialFunction 类型推断

让我们考虑以下函数: def printPfType[T](pf:PartialFunction[T, _])(隐式 m:Manifest[T]) = {println(m.toString)} 然后我定义了以下测试类: case class Test(s:String, i:Int) 我不会写这个: printPfType {case Test(_,i) =>一世} 因为编译器无法推 ..
发布时间:2021-09-11 19:56:57 其他开发

推断泛型时避免加宽

以这个函数为例 类型解码器= (v: A) =>乙声明函数测试(选项:{价值观:价值观,解码器:D,onDecoded: (decodedValue: ReturnType) =>未知}): 空白; 这个想法是 onDecoded 输入由 decoder 计算的值.但是: 测试({值:{a:“";},解码器:值=>values.a.length,onDecoded:decodedValue ..
发布时间:2021-09-11 19:56:54 其他开发

打字稿类推断

有谁知道如何在抽象泛型类中获取当前类?如何像“CurrentClass"类型一样引用当前类而不仅仅是抽象类? 原因:我正在编写一个小型库,它应该“推断"当前类而不执行“作为 CurrentClass" 抽象类超级{public static create(args: keyof CurrentClass) {}}class CurrentClass 扩展 Super {}//阻止Curre ..
发布时间:2021-09-11 19:56:51 其他开发