Sure they are, just not on the classical C++/Java style hence the footnote, as I was already expecting that kind of comments.
There isn't "The ONE true OOP way", just like there isn't "The ONE true FP way" or "The ONE true LP way".
Each paradigm has a set of concepts of what they might mean, and many languages cherry pick from there.
Rust and Go implement polymorphism via traits and interfaces respectively.
Rust and Go implement encapsulation via struct methods and modules.
Rust and Go implement containment.
Rust and Go allow for delegation.
Rust allows for type extensions via a mix of generics and traits.
Go allows for struct embedding as a kind of type extension.
Class based inheritance is not a requirement for a language to be OO.
CS literature is full of languages that explored other kinds of OO.