jsdoc3/jsdoc — pull request #769 by eventualbuddha (2014-09-22 17:36:22+00:00)
Title: Add support for ES6 classes

This is not entirely complete yet, but is close. The one known issue is that, since the AST nodes for the `ClassDeclaration` and the constructor `MethodDefinition` are distinct, I don't know how to make jsdoc join the documentation for them together to make it show as you'd expect (that is, params to the `constructor(arg1, arg2)` method should show under the docs for the class itself e.g. `new Foo(arg1, arg2)`). Here is an example of what I'm talking about:

```js
/**
* A point in a 2-dimensional coordinate system.
*/
class Point {
/**
* @param {number} x
* @param {number} y
*/
constructor(x, y) {
this.x = x;
this.y = y;
}
}
```

I tried fixing this by implicitly adding the `@constructs Point` tag to the constructor method, but that ended up just making it an alias and overrode the description docs on the `ClassDeclaration` node. I tried to figure out how to simply concatenate the docs or move the tags over from the `constructor` method to the class declaration, but it wasn't really clear how to do this. Any hints?