kw super
Reserved keyword
The list of words: §1.4
Defined in
- 4.7 Embedding and overriding — There is no implementation inheritance.
- 2.2 Import — The first segment of the path MUST be std, self, super or the name of a dependency from oxl.toml.
- 1.4 Keywords — Reserved (cannot be used as names)
Examples
data Animal { name: str }
impl Animal {
open fn speak() -> str => "..."
fn hello() -> str => "I am {name}: {speak()}"
}
data Dog { embed Animal; breed: str }
impl Dog { override fn speak() -> str => "Woof, {super.speak()}" }
Dog{ name: "Rex", breed: "lab" }.hello() // "I am Rex: Woof, ..."— 4.7 Embedding and overriding
use std.time { Duration, now }
use std.http.{Client as Http}
use self.billing { charge } // a module of one's own package
use super.common { Money } // the parent module
use auth.tokens { verify } // a dependency from oxl.toml
use parsers { <|> } // importing an operator
use std.coll.* // all pub names (a warning in libraries)Related diagnostics
ambiguous-embed, missing-override, override-without-open, bad-import-root, glob-import, import-conflict, unresolved-import, unresolved-name