哪个Scala项目提供了@data宏?

问题描述 投票:0回答:3

简单的问题,但我无法通过 Google 获得答案。我过去见过有人编写了一个宏,让您选择

case class
为您提供的各种内容,您可以通过将
@data
宏注释添加到
class
而不是
case 来获得这些内容
关键字。这是什么项目?

scala macros case-class
3个回答
1
投票

我认为这是 Scala 宏研讨会的一部分。

Scala World 2016 演讲“Scala 编译器插件的回归”的练习材料

https://github.com/fommil/scala-compiler-plugin

此项目包含一个用于模拟案例类的

@data
宏,由 Sam Halliday 编写,并由 Eugene Burmako 编写一些待处理的拉取请求。


0
投票

我不知道

@data class
。我无法想象有人能做到这一点,与案例班相比没有任何优势。你必须输入更多内容,而且我更相信本机实现而不是某些库

我认为你指的是lombok项目(这意味着Java,但可能可以在Scala上使用):https://projectlombok.org/features/Data.html

此外,Kotlin 有

data class
而不是
case class
https://kotlinlang.org/docs/reference/data-classes.html


0
投票

您可以从 https://github.com/alexarchambault/data-class获取此信息。

用法如下:

import dataclass.data

@data class Foo(n: Int, s: String)
© www.soinside.com 2019 - 2024. All rights reserved.