rustRust struct as trait
A Rust struct can be used as a trait by implementing the trait for the struct. This allows the struct to use the methods and properties of the trait. For example, the following code defines a Point struct and implements the Display trait for it:
struct Point {
x: i32,
y: i32,
}
impl Display for Point {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
write!(f, "({}, {})", self.x, self.y)
}
}
let p = Point { x: 3, y: 4 };
println!("{}", p);
Output example
(3, 4)
The code above defines a Point struct with two fields x and y. The impl Display for Point block implements the Display trait for the Point struct. This allows the Point struct to use the fmt method of the Display trait. The println! macro then uses the fmt method to print the Point struct.
Helpful links
Related
- How to init zero struct in Rust
- Example of Rust struct with closure
- How to serialize struct to xml in Rust
- Example of struct private field in Rust
- How to update struct in Rust
- Example of constant struct in Rust
- Rust struct without fields
- How to extend struct from another struct in Rust
- How to convert struct to bytes in Rust
- How to pretty print a struct in Rust
More of Rust
- How to replace strings using Rust regex?
- How to match whitespace with a regex in Rust?
- How to match a URL with a regex in Rust?
- How to replace all matches using Rust regex?
- How to use regex lookbehind in Rust?
- How to use regex to match a double quote in Rust?
- How to use non-capturing groups in Rust regex?
- Regex example to match multiline string in Rust?
- How to use regex lookahead in Rust?
- How to get a capture group using Rust regex?
See more codes...