{"action":"created","issue":{"url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/873","labels_url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/873/labels{/name}","comments_url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/873/comments","events_url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/873/events","html_url":"https://github.com/jsdoc3/jsdoc/issues/873","id":53847967,"number":873,"title":"inheritance chain not displayed for AMD modules","user":{"login":"tcstory","id":5856466,"avatar_url":"https://avatars.githubusercontent.com/u/5856466?v=3","gravatar_id":"","url":"https://api.github.com/users/tcstory","html_url":"https://github.com/tcstory","followers_url":"https://api.github.com/users/tcstory/followers","following_url":"https://api.github.com/users/tcstory/following{/other_user}","gists_url":"https://api.github.com/users/tcstory/gists{/gist_id}","starred_url":"https://api.github.com/users/tcstory/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/tcstory/subscriptions","organizations_url":"https://api.github.com/users/tcstory/orgs","repos_url":"https://api.github.com/users/tcstory/repos","events_url":"https://api.github.com/users/tcstory/events{/privacy}","received_events_url":"https://api.github.com/users/tcstory/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2015-01-09T09:20:16Z","updated_at":"2015-01-09T20:29:09Z","closed_at":"2015-01-09T20:29:09Z","body":"my English is poor, and I am beginner to requirejs and jsdoc.\r\nI have the following code\r\n\r\n    /**\r\n     * @module mymodule\r\n     */\r\n    define(function () {\r\n        /**\r\n         * @classdesc Person class\r\n         * @class Person\r\n         * @constructor\r\n         */\r\n        var Person = function () {\r\n        };\r\n        /**\r\n         * @description say I'm Person class\r\n         */\r\n        Person.prototype.sayName = function () {\r\n            alert(\"I'm Person\");\r\n        };\r\n        /**\r\n         * @classdesc Student class\r\n         * @class Student\r\n         * @extends Person\r\n         * @constructor\r\n         */\r\n        var Student = function () {\r\n        };\r\n        /**\r\n         * @description say I'm Student class\r\n         * @override\r\n         */\r\n        Student.prototype.sayName = function () {\r\n            alert(\"I'm Student\");\r\n        };\r\n        return Student;\r\n    });\r\n\r\nthe Student class's method **sayName** overrides the Person's method,but the after running jsdoc,the out did not show the inheritance. please look at the screenshot\r\n![1](https://cloud.githubusercontent.com/assets/5856466/5677534/d460f408-9822-11e4-9e22-774c8c479d39.png)\r\nbut when i put the code into a normal js file,the inheritance is displayed.\r\ncode \r\n\r\n    /**\r\n     * @classdesc Person class\r\n     * @class Person\r\n     * @constructor\r\n     */\r\n    var Person = function () {\r\n    };\r\n    /**\r\n     * @description say I'm Person class\r\n     */\r\n    Person.prototype.sayName = function () {\r\n        alert(\"I'm Person\");\r\n    };\r\n    /**\r\n     * @classdesc Student class\r\n     * @class Student\r\n     * @extends Person\r\n     * @constructor\r\n     */\r\n    var Student = function () {\r\n    };\r\n    /**\r\n     * @description say I'm Student class\r\n     */\r\n    Student.prototype.sayName = function () {\r\n        alert(\"I'm Student\");\r\n    };\r\n\r\nscreenshot\r\n![2](https://cloud.githubusercontent.com/assets/5856466/5677586/906a073e-9823-11e4-992c-6cf6b2c4dbf2.png)\r\n\r\njsdoc's version is JSDoc 3.3.0-dev"},"comment":{"url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/comments/69393997","html_url":"https://github.com/jsdoc3/jsdoc/issues/873#issuecomment-69393997","issue_url":"https://api.github.com/repos/jsdoc3/jsdoc/issues/873","id":69393997,"user":{"login":"hegemonic","id":1522391,"avatar_url":"https://avatars.githubusercontent.com/u/1522391?v=3","gravatar_id":"","url":"https://api.github.com/users/hegemonic","html_url":"https://github.com/hegemonic","followers_url":"https://api.github.com/users/hegemonic/followers","following_url":"https://api.github.com/users/hegemonic/following{/other_user}","gists_url":"https://api.github.com/users/hegemonic/gists{/gist_id}","starred_url":"https://api.github.com/users/hegemonic/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hegemonic/subscriptions","organizations_url":"https://api.github.com/users/hegemonic/orgs","repos_url":"https://api.github.com/users/hegemonic/repos","events_url":"https://api.github.com/users/hegemonic/events{/privacy}","received_events_url":"https://api.github.com/users/hegemonic/received_events","type":"User","site_admin":false},"created_at":"2015-01-09T20:29:09Z","updated_at":"2015-01-09T20:29:09Z","body":"The problem is that you're using the wrong names for the classes. Please see [these examples on Use JSDoc](http://usejsdoc.org/howto-amd-modules.html#function-that-returns-another-function) for the correct way to document AMD modules. \r\n\r\nIn this case, the longname for the `Person` class should be `module:mymodule~Person`, because it's an inner class (in other words, it is not exported by the module). The longname for the `Student` class should be `module:mymodule`, because it's the only symbol exported by the module.\r\n\r\nHere's a fixed-up version of your example:\r\n\r\n```js\r\n/**\r\n * @module mymodule\r\n */\r\ndefine(function () {\r\n    /**\r\n     * @classdesc Person class\r\n     * @class\r\n     * @alias module:mymodule~Person\r\n     */\r\n    var Person = function () {\r\n    };\r\n    /**\r\n     * @description say I'm Person class\r\n     */\r\n    Person.prototype.sayName = function () {\r\n        alert(\"I'm Person\");\r\n    };\r\n    /**\r\n     * @classdesc Student class\r\n     * @class\r\n     * @alias module:mymodule\r\n     * @extends module:mymodule~Person\r\n     * @constructor\r\n     */\r\n    var Student = function () {\r\n    };\r\n    /**\r\n     * @description say I'm Student class\r\n     * @override\r\n     */\r\n    Student.prototype.sayName = function () {\r\n        alert(\"I'm Student\");\r\n    };\r\n    return Student;\r\n});\r\n```\r\n\r\nIf you have more questions, please send them to the [jsdoc-users mailing list](https://groups.google.com/forum/#!forum/jsdoc-users). The issue tracker is for bug reports and feature requests. Thanks!"}}