Я пытаюсь понять значение и цель :: binary (), которые существуют в определении записи, но на самом деле не понимаю этого. Благодарю, если кто-нибудь может помочь мне понять это.
Пример: mod_offline.hrl.
Я пытаюсь понять значение и цель :: binary (), которые существуют в определении записи, но на самом деле не понимаю этого. Благодарю, если кто-нибудь может помочь мне понять это.
Пример: mod_offline.hrl.
Это объявление типа. Это описано в разделе «Информация о типе в объявлениях записей».
Смысл в том, что значение этого поля записи должно быть двоичным. Поскольку Erlang - язык со слабой типизацией, компилятор не заботится об этом, но есть средство проверки статического типа под названием Dialyzer, который пытается найти места в коде, которые помещают в это поле что-то, кроме двоичного, или ожидает, что в поле будет храниться что-то другое, кроме двоичного.
Для мягкого введения в спецификации типов и Dialyzer см. спецификацию типов и главу Erlang книги Learn You Some Erlang.