blob: a2c6b2d67962705f51200a82cbcde38a56bd8a4b (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
package scala.scalajs.tools.jsdep
import scala.scalajs.tools.json._
/** The place a JSDependency originated from */
final class Origin(val moduleName: String, val configuration: String) {
override def toString(): String = s"$moduleName:$configuration"
}
object Origin {
implicit object OriginJSONSerializer extends JSONSerializer[Origin] {
def serialize(x: Origin): JSON = {
new JSONObjBuilder()
.fld("moduleName", x.moduleName)
.fld("configuration", x.configuration)
.toJSON
}
}
implicit object OriginDeserializer extends JSONDeserializer[Origin] {
def deserialize(x: JSON): Origin = {
val obj = new JSONObjExtractor(x)
new Origin(
obj.fld[String]("moduleName"),
obj.fld[String]("configuration"))
}
}
}
|