json.worksheet.sc 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. import upickle.default._
  2. import java.time.LocalDate
  3. import game._
  4. import balldontlie._
  5. val json0 = ujson.Arr(
  6. ujson.Obj("myFieldA" -> ujson.Num(1), "myFieldB" -> ujson.Str("g")),
  7. ujson.Obj("myFieldA" -> ujson.Num(2), "myFieldB" -> ujson.Str("k"))
  8. )
  9. upickle.default.read[List[Map[String, String]]](json0)
  10. val wd = os.pwd
  11. val json_string = os.read(wd / "suns_2021.json")
  12. val json1 = ujson.read(json_string)
  13. json1.obj("data")
  14. upickle.default.read[GamesResponse](json1)
  15. val teams_string = os.read(wd / "teams_p1.json")
  16. val teams_json = ujson.read(teams_string)
  17. val response: TeamsResponse = upickle.default.read[TeamsResponse](teams_json)
  18. val teams_p2_string = os.read(wd / "teams_p2.json")
  19. val teams_p2_json = ujson.read(teams_p2_string)
  20. upickle.default.read[TeamsResponse](teams_p2_json)
  21. val teams = TeamsResponse.getTeams
  22. teams.size
  23. val json_null = ujson.read("""
  24. {
  25. "test": null
  26. }
  27. """)
  28. case class Nullable(test: Option[Double])
  29. implicit val nullableR: Reader[Nullable] = macroR[Nullable]
  30. upickle.default.read[Nullable](json_null)
  31. json_null.obj("test").numOpt