Время компиляции утверждать в Swift?
Можно ли придумать утверждение компиляции в Swift, как static_assert в C++? Может быть, какой-нибудь способ использовать ограничения типов на обобщениях, чтобы вызвать разрыв компилятора?
2 ответа
Это в настоящее время рассматривается в Swift evolution, но в настоящее время отсутствует на языке.
Если вы говорите об общем утверждении, в котором приложение потерпит крах, если данное условие не выполнится, просто используйте: assert(condition,message)
Например: assert(2 == 3,"failing because 2 does not equal 3")
Это возможно в Swift. Тем не менее, я должен отметить, что мантра дизайна Apple заключается в том, что приложение никогда не должно падать, а должно обрабатывать все свои ошибки "изощренно".