@@ -1338,13 +1338,14 @@ pub enum ExprKind {
13381338 ///
13391339 /// The `PathSegment` represents the method name and its generic arguments
13401340 /// (within the angle brackets).
1341- /// The standalone `Expr` is the receiver expression.
1342- /// The vector of `Expr` is the arguments.
1343- /// `x.foo::<Bar, Baz>(a, b, c, d)` is represented as
1344- /// `ExprKind::MethodCall(PathSegment { foo, [Bar, Baz] }, x, [a, b, c, d])`.
1341+ /// The first element of the vector of an `Expr` is the expression that evaluates
1342+ /// to the object on which the method is being called on (the receiver),
1343+ /// and the remaining elements are the rest of the arguments.
1344+ /// Thus, `x.foo::<Bar, Baz>(a, b, c, d)` is represented as
1345+ /// `ExprKind::MethodCall(PathSegment { foo, [Bar, Baz] }, [x, a, b, c, d])`.
13451346 /// This `Span` is the span of the function, without the dot and receiver
13461347 /// (e.g. `foo(a, b)` in `x.foo(a, b)`
1347- MethodCall ( PathSegment , P < Expr > , Vec < P < Expr > > , Span ) ,
1348+ MethodCall ( PathSegment , Vec < P < Expr > > , Span ) ,
13481349 /// A tuple (e.g., `(a, b, c, d)`).
13491350 Tup ( Vec < P < Expr > > ) ,
13501351 /// A binary operation (e.g., `a + b`, `a * b`).
0 commit comments