6061906a77
This updates the parser to detect constructors vs methods in classes vs mixins vs extensions. Rather than generating a single endMethod event and require listeners to determine the type of declaration, the parser now generates different events for different types of declarations so that listeners can process each of these different types separately. In addition, this lays the groundwork for fixing extension declaration error messages and moving error generation that is duplicated in the various listeners into the parser. Change-Id: Ia86a4bf3e6f1442ca4926c754b66e7d6e86fb47d Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/114900 Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>