type-inference

    2热度

    1回答

    我正在尝试在Ocaml中作为练习的打字版本。 为了使它更实用,我将一条记录作为参数传递给渲染。 type ('props,'state) reactInstance = { props: 'props; state: 'state; updater: 'a . ('props,'state) reactInstance -> 'a -> 'state ->

    2热度

    2回答

    我采取了以下枚举在科特林 enum class PlaylistAction(val playlistFilter:(Playlist) -> Boolean) { PLAY ({ it.playListOwner.Id == "xxx" }), SAVE({true}) } 我想用它来过滤像这样的列表: var test = playlists.filter { pla

    0热度

    1回答

    我有以下代码: class Pipe[ A ](a: A) { def |>[ B ](f: A => B) = f(a) def !>[ B ](f: A => B) : Try[B] = Try(f(a)) def !>[ B, C ](f: B => C)(implicit ev: A =:= Try[B]) : Try[C] = a.map(f) } (

    0热度

    1回答

    我有一个类型推断问题,并要求帮助here。 最初的问题是由于过载。一旦纠正我 仍然有问题。 所以这里是代码: class DPipe[ A ](a: A) { def !>[ B ](f: A => B) = Try(f(a)) def #>[ B, C ](f: B => C)(implicit ev: A =:= Try[B]) : Try[C] = a.map(f)

    5热度

    1回答

    我正在使用lambda来实现下面的Java程序中的函数接口。当lambda作为参数传递给泛型方法时,编译器会标记“不兼容类型”错误,因为它会推断出lambda表达式实现了接口,该接口将编译器将lambda参数(“thing”)解释为当lambda尝试将它传递给需要类型为Round的参数的方法(testRound)时,它的类型为Shape。这个错误对我来说很有意义。 但等效的方法参考不会引发错误消息

    1热度

    1回答

    我正在使用Kotlin KBuilders以及一些protobuffs,并且遇到了令我困惑的情况。 首先,我有一个函数,它接受一个文件名和序列化的JSON列表,并将该JSON反序列化为一个protobuff。 fun parseFileData(fileName: String, lines: List<String>): Data.Builder.() -> Unit = when (fileN

    -1热度

    1回答

    我有一个非常简单的扩展方法泛型类型(它可能是无关紧要的,虽然它是延伸和将是普通的人一样): public static T Content<T>(this HttpResponseMessage response) { var content = (ObjectContent<T>) response.Content; return (T) content.Value; }

    6热度

    2回答

    此代码的工作: fn main() { let a: i32 = (1i32..10).sum(); let b = a.pow(2); } 如果我从a删除i32类型,然后我得到这个错误: rustc 1.13.0 (2c6933acc 2016-11-07) error: the type of this value must be known in this con

    1热度

    2回答

    在对a paper由Eugene Burmako: 在阿卡,一个[...],演员通常交互使用无类型tell方法。由于参与者能够相互发送任意类型的消息,因此类型信息在接收方丢失,并且通常只能使用模式匹配进行恢复,松动类型保证。 他在这里提到了什么保证,为什么模式匹配会削弱它们?

    4热度

    1回答

    当我在ghci中输入:t 4我得到 Prelude> :t 4 4 :: Num t => t 我明白为什么4不仅是int或一个整数,它是infered底了,但我不明白为什么4不作为的Ord t => t或更正确的是这样的: 4 :: (Ord t || Num t) => t 因为4既是Ord和Num但Ord和Num有没有关系。 那么为什么:t 4只输出Num?