问题标签 [associated-types]

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 投票
2 回答
6283 浏览

swift - Can't create an Array of types conforming to a Protocol in Swift

I have the following protocol and a class that conforms to it:

When I try to create an Array of foos, I get an odd error:

Protocol Foo can only be used as a generic constraint because it has Self or associated type requirements.

OK, so it can only be used if it has an associated type requirement (which it does), but for some reason this is an error?? WTF?!

I'm not sure I fully understand what the compiler is trying to tell me...

0 投票
0 回答
304 浏览

swift - 关联类型符合协议时的段错误

在尝试编译下面的代码时,我遇到了 Swift 编译器段错误的问题。

我已经发布了关于此的错误报告,但想知道是否:
1)我做的任何事情本质上都是错误
的 2)我可以使用“解决方法”来获得类似的结果。我想不是,但我会很感激你可能有的任何想法

0 投票
1 回答
344 浏览

haskell - Haskell 中的变量关联类型/数据类型

我目前正在尝试重载MonadTrans以前的提取功能。我目前的尝试是将内部单子m作为关联类型的实例Result

形状滑稽的唯一原因Foo是由于MonadTransMonadReader限制。基本上,这迫使所有关联的类型实例都是单态类型(对吗?)。

然后我想重新设计它,Result简单地制作一个多态变量:

...但是在实例中,类型resultand w(例如,如果是ReaderT prefix was m将不会统一。有没有办法让这个resultvarialbe / idea 多态,但可以确定?

0 投票
1 回答
223 浏览

generics - 使用关联类型作为参数编写递归特征方法时出错

我一直在更新一个库以使用 Rust 的新关联类型。该库提供了Node用于构建 DSP 图的特征。下面是 trait 的简化版本,它会产生我在库中遇到的相同错误。

这是错误消息

围栏链接 - http://is.gd/xm0wvS

考虑到self.inputs()返回Nwhere N: Node<Output = <Self as Node>::Output>,我的印象是 rustc 应该有足够的类型信息input来满足对output_requested方法的调用?

非常感谢任何帮助!

0 投票
1 回答
252 浏览

rust - 具有依赖于关联类型边界的默认方法的特征

我想不出一种方法来编译这段代码--cfg on_trait

on_trait失败了:

没有on_trait,它编译得很好。请注意,该not(on_trait)变体的不同之处仅在于它是一个自由函数而不是默认方法。


编辑:我打开了一个问题:rust-lang/rust#22036

0 投票
2 回答
450 浏览

.net - VB.NET CommanLineArgs 未从关联文件类型传递

我有一个具有关联文件类型的单实例 clickOnce winFrom 应用程序。

当我在调试中运行应用程序并通过调试设置手动输入命令行参数时,一切都按预期工作。调试参数中指定的文件已被处理,一切都按计划进行。

当我实际双击关联的文件类型(调试或实时)时,由于某种原因,命令行 arg (%1) 未传输到应用程序。它只是不存在。
我确实在我的发布>选项>文件关联中设置了文件扩展名。我确实有如下注册表项:

这实际上会在双击文件时打开应用程序。唯一缺少的是发送文件名(要打开和处理)。

任何想法可能导致这样的事情发生?

编辑:请注意该文件只是一个序列化对象可能很重要。目的是在双击文件后反序列化和处理对象。当我使用调试命令行 arg 时,执行此操作的逻辑已经到位并且可以正常工作。

Environment.GetCommandLineArgs() 仅返回 (0) 中的可执行文件的路径。

My.Application.CommandLineArgs.count = 0

0 投票
1 回答
170 浏览

image - Rust + Rust Image - 私有“关联类型”?

目标很简单 - 获取 (0, 0) 处的颜色,并在指定阈值(本例中为 16384)内删除图像中与其相似的任何像素。但是,下面的代码无法编译:

它给出了以下错误:

这大概是因为 GenericImage 结构定义了自己的内部“像素”,我认为我无法访问它,但与普通的 Pixel 结构完全相同。我将如何获得具有此功能的代码进行编译?put_pixel我见过的所有其他用法都get_pixel在图像对象上使用并对其进行了操作,但我需要使用透明像素,这样就行不通了。

0 投票
1 回答
179 浏览

haskell - 封闭类型类是否足以推断关联类型(没有类型族)?

在下面的代码中,ghc 抱怨歧义。我假设这是因为类型类是开放的(外部代码可以定义新实例并实际上使这个模棱两可)。

如果我能以某种方式关闭类型Indexable类,是否足以使这个想法成为实现基本关联类型的有效方法?

这个问题更多的是关于类型推断的理论方面,而不是关于如何让它在 Haskell 中工作。这里的问题是这样一个系统的理论问题,它会使下面无法进行推理t1吗?允许封闭类型类是否足以t1明确推断?

0 投票
1 回答
99 浏览

vb.net - 如何检测关联类型的文件是否已启动我的应用程序?VB.net

我正在使用 inno setup 并创建了关联的文件类型,以便当用户双击关联的文件时我的应用程序启动。但是我怎么知道应用程序是否由文件启动,以便我可以显示该文件?现在,我的应用程序只是开始运行。

0 投票
4 回答
8828 浏览

swift - Swift - 枚举的关联值或扩展

关于快速枚举的一般问题。

我想创建一个“图标”枚举并将一个值“关联”到枚举案例

我想为枚举的值创建一个关联的图像。以及与枚举值相关的颜色

因此,例如,如果可以执行以下操作:

这种事情可能吗?