self
Source: compiler/src/builtin_docs/keywords.md The receiver of a method: the instance the method was called on.
Instance methods take self implicitly (it is not listed in the
parameters). Read and write fields as self.field and call other methods as
self.method(). static fn methods have no self. Class invariants and
ensures clauses can mention self.
class Counter {
n: int,
}
impl Counter {
pub fn bump() -> int {
self.n = self.n + 1;
return self.n;
}
}
See also#
fn: Declares a function, a method, or (written in an expression) an anonymous function.let: Declares a mutable local variable.const: Declares a binding that cannot be reassigned: a local, a module constant, or a class field that is set only bynew.static: Declares a module-level or class-level slot shared by the whole program, or a method withoutself.readonly: A read-only view of a value: nothing reachable through it can be changed.if: Runs a block when aboolcondition is true.else: Introduces the branch of anifthat runs when its condition is false (or its pattern does not match).while: Repeats a block while aboolcondition is true.