2016-06-10 3 views
1

Я изучаю clojure.spec и столкнулся с следующим :В чем смысл #inst "2000" и концепции, стоящей за ней (clojrue.spec/inst-in #inst "2000" #inst "2010)

(s/def ::the-aughts (s/inst-in #inst "2000" #inst "2010")) 

Я думаю, что #inst "2000" может означать экземпляр времени в начале 2000 года, но я не мог найти, по Google, соответствующую документацию, описывающую обозначения и понятия позади него.

Я еще не научился в своих учебниках по Слову.

ответ

4

Этот синтаксис называется "tagged literals". Он позволяет расширять EDN с помощью ваших собственных типов. Clojure reader supports it и предоставляет механизм для сопоставления литерала тега функции, которая приведет к фактическому значению.

Мгновенная метка literal (#inst) соответствует date parsed from the string. Вы можете найти более подробную информацию в the cookbook и Clojure changelog.

 Смежные вопросы

  • Нет связанных вопросов^_^