mirror of
https://github.com/rust-lang/rust.git
synced 2025-10-02 18:27:37 +00:00
34 lines
786 B
Rust
34 lines
786 B
Rust
//! Test taking a method value without parentheses
|
|
|
|
struct Point {
|
|
x: isize,
|
|
y: isize,
|
|
}
|
|
|
|
impl Point {
|
|
fn new() -> Point {
|
|
Point { x: 0, y: 0 }
|
|
}
|
|
|
|
fn get_x(&self) -> isize {
|
|
self.x
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
// Test with primitive type method
|
|
let _f = 10i32.abs; //~ ERROR attempted to take value of method
|
|
|
|
// Test with custom type method
|
|
let point: Point = Point::new();
|
|
let px: isize = point.get_x; //~ ERROR attempted to take value of method `get_x` on type `Point`
|
|
|
|
// Test with method chains - ensure the span is useful
|
|
let ys = &[1, 2, 3, 4, 5, 6, 7];
|
|
let a = ys
|
|
.iter()
|
|
.map(|x| x)
|
|
.filter(|&&x| x == 1)
|
|
.filter_map; //~ ERROR attempted to take value of method `filter_map` on type
|
|
}
|