OxL Справочник OxL
РусскийEnglish

kw as

Зарезервированное слово

Список слов: §1.4

Синтаксис

ebnf
Import      = ( Ident | OpSymbol ) [ "as" Ident ] ;
ebnf
Env         = Expr [ "as" Ident ] ;
ebnf
Postfix     = Primary { "(" [ Args ] ")" [ TrailingBlock ] | "[" Expr "]" | "." ( Ident | IntLit | "[" Expr "]" )
            | "?." Ident | "?" | "!" | "as" Type | "is" Type } ;

Грамматика: Прил. A

Определяется в

Примеры

oxl
impl Vec3 {
  static op +(a: Vec3, b: Vec3) -> Vec3 => Vec3(a.x + b.x, a.y + b.y, a.z + b.z)
  static op *(v: Vec3, k: f32) -> Vec3 => Vec3(v.x * k, v.y * k, v.z * k)
  static op -(v: Vec3) -> Vec3 => v * -1.0
  op [](i: usize) -> f32 { … }            // чтение по индексу
  var op [](i: usize) -> &var f32 { … }   // запись по индексу
  op ()(t: f32) -> Vec3 { … }             // вызов как функции
  static op <=>(a: Vec3, b: Vec3) -> Ordering { … }
  op as Vec4 => Vec4(x, y, z, 1.0)
}

— 5.3 Перегрузка и пользовательские операторы

oxl
use std.time { Duration, now }
use std.http.{Client as Http}
use self.billing { charge }      // модуль своего пакета
use super.common { Money }       // родительский модуль
use auth.tokens { verify }       // зависимость из oxl.toml
use parsers { <|> }              // импорт оператора
use std.coll.*                   // все pub-имена (предупреждение в библиотеках)

— 2.2 Импорт

Связанные диагностики

not-callable, not-overloadable, operator-decl, range-not-iterable, chained-comparison, bad-import-root, glob-import, import-conflict, unresolved-import, unresolved-name, cluster-auth, fixture-yield

См. также