@ @derive
@derive(I, …)
Применяется к: data, enum, distinct
Раздел: §4.6
Синтаксис
Attr = "@" Path [ "(" [ AttrArgs ] ")" ] ;Грамматика: Прил. A
Определяется в
- 4.6 Интерфейсы — Интерфейсы структурные
- 3.6 Псевдонимы, новые и уточнённые типы — distinct T создаёт новый номинальный тип с представлением T.
- 3.9 Copy и move — Типы Copy: примитивы, str, bytes, Duration, Time и другие типы времени, distinct/уточнённые над Copy-типом, кортежи и массивы из Copy-типов,
- 4.3 Конструирование и конструкторы — Литерал. T{ f1: e1, f2, ..base }
- 4.9 Атрибуты — Синтаксис: @имя или @имя(аргументы) перед объявлением, полем, параметром или rpc.
- 15.4 Пользовательские атрибуты и генерация кода — attr Имя { поля } объявляет атрибут; comptime fn Имя.apply(d
Связанные диагностики
explicit-interface, interface-not-satisfied, refinement-violated, use-after-move, bad-init, missing-field, must-close, positional-literal, sealed-literal, deprecated