GitHub
MetaCodable: расширение Codable с помощью метапрограммирования макросов
MetaCodable — расширение возможностей реализации Codable
в Swift с помощью макросов. Фреймворк предоставляет пользовательские макросы, которые могут быть использованы для генерации динамических реализаций Codable. Ядром фреймворка является макрос Codable(), который генерирует реализацию на основе данных, предоставляемых с помощью других макросов.
MetaCodable нацелен на повышение эффективности ваших реализаций Codable, предоставляя следующие возможности:
- Позволяет объявлять пользовательские значения
CodingKey
для каждой переменной, вместо того чтобы писать все значенияCodingKey
с помощьюCodedAt(_:)
, передавая один аргумент. - Позволяет создавать плоскую модель для вложенных значений
CodingKey
сCodedAt(_:)
иCodedIn(_:)
. - Позволяет создавать композицию из нескольких типов
Codable
с помощьюCodedAt(_:)
, не передавая никаких аргументов. - Позволяет предоставлять значение по умолчанию в случае сбоев декодирования с помощью
Default(_:)
. - Позволяет создавать пользовательские стратегии декодирования/кодирования с помощью
HelperCoder
и использовать их с помощьюCodedBy(_:)
, т.е.LossySequenceCoder
и т.д. - Позволяет игнорировать определенные свойства при декодировании/кодировании с помощью
IgnoreCoding()
,IgnoreDecoding()
и@IgnoreEncoding()
. - Позволяет игнорировать все инициализированные свойства типа при декодировании/кодировании с помощью функции
IgnoreCodingInitialized()
, если они явно не запрошены для декодирования/кодирования путем добавления каких-либо атрибутов кодирования, т.е.CodedIn(_:)
,CodedAt(_:)
,CodedBy(_:)
,Default(_:)
и т.д.
Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
-
Аналитика магазинов2 недели назад
Тренды мобильных приложений 2025: ИИ и конфиденциальность меняют мобильную индустрию
-
Магазины приложений2 недели назад
Приложение Hot Tub появится на iOS в EC
-
Разработка3 недели назад
Смешивание цветов в SwiftUI
-
Видео и подкасты для разработчиков4 недели назад
Управление ресурсами в DevOps: от облачных решений до «железных» серверов