Что означает Json.Decode.{}? Часть фигурных скобок

Я пытаюсь изучить ReasonML и, следуя примеру для bs-json, мы можем декодировать raw json в такой тип:

type point = {
  x: float,
  y: float
};

module Decode = {
  let point = json =>
    Json.Decode.{
      x: json |> field("x", float),
      y: json |> field("y", float)
    };
}

Я немного сбит с толку относительно того, что это Json.Decode.{ ... } является. Я понимаю, что мы можем открыть область в модуль, используя .() круглая скобка, но я не видел этой фигурной скобки раньше.

1 ответ

Решение

Это означает почти то же самое, что Json.Decode открывается в сферу {}, который определяет запись, как обычно. По сути, просто сокращение для Json.Decode.({ .. }),

Изменить: я только что добавил заметку bs-json s README, чуть ниже примера, чтобы объяснить этот синтаксис.

Другие вопросы по тегам