kw impl
Зарезервированное слово
Список слов: §1.4
Синтаксис
Impl = "impl" [ Type "for" ] Type "{" { ImplMember } "}" ;Грамматика: Прил. A
Определяется в
- 4.5 impl и методы — Внутри метода доступны self и Self.
- 4.3 Конструирование и конструкторы — Литерал. T{ f1: e1, f2, ..base }
- 10.1 Сервисы — service объявляет контракт
- 12.7 Зависимости — provide Тип = выражение (for role r, …)?
- 4.7 Встраивание и переопределение — Наследования реализации нет.
- 5.3 Перегрузка и пользовательские операторы — Перегрузка встроенных операторов — объявления op в impl
- 9.5 Пользовательские сериализаторы — Уровень 1 — представление через другой тип (Repr), действует во всех форматах и в схемах
- 0.1 Нормативные термины — Неопределённого поведения в безопасном коде нет.
Примеры
impl Money {
pub const ZERO: Money = Money{ minor: 0 }
pub const MAX_TRANSFER: Money = Money.rub(1_000_000)
}
interface Codec<T> { const NAME: str } // реализация обязана задать значение
impl Codec<Point> for GeoHashCodec { const NAME: str = "geohash" }provide Db = Db.open(App.get().dbUrl) for role api, saga
provide Payments = PaymentsClient.new(App.get().stripeKey)
impl Orders { dep db: Db; dep pay: Payments }Связанные диагностики
impl-foreign-type, unknown-method, bad-init, missing-field, must-close, positional-literal, sealed-literal, duplicate-impl, impl-signature-mismatch, missing-impl, missing-rpc-impl, unknown-rpc, duplicate-provide, missing-provide