Что <~~ означает в быстром? - PullRequest
0 голосов
/ 06 июля 2018

При проверке синтаксического анализатора JSON в swift я обнаружил следующий код:

description = "desc" <~~ json

Я полагаю, что это похоже на использование следующего:

description = json["desc"]

Это правильно? если нет, что означает этот оператор?

Спасибо

1 Ответ

0 голосов
/ 06 июля 2018

Вы правы. Но было бы неправильно предполагать, что именно это и предполагается делать в Swift.

Я думаю, что использовался синтаксический анализатор Gloss, и кажется, что они написали перегрузку оператора специально для обозначения description = json["desc"] (и / или некоторых других вещей под капотом, чтобы облегчить анализ). Оператор не имеет значения per se в Swift. Но это придумано каркасом для разбора.

Вы можете прочитать о перегрузке оператора здесь

EDIT

Я всегда неправильно использовал термины оператор перегрузки и определял пользовательский оператор взаимозаменяемо. Перегрузка оператора расширяет реализацию существующих операторов , что отличается от определения ваших собственных пользовательских операторов. Большое вам спасибо за указание на это, @ Джакомо Альзетта!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...