diff --git a/lib/jsdoc/src/parser.js b/lib/jsdoc/src/parser.js index 7d5bdc22..ce38a26a 100644 --- a/lib/jsdoc/src/parser.js +++ b/lib/jsdoc/src/parser.js @@ -318,7 +318,7 @@ Parser.prototype.astnodeToMemberof = function(node) { result = jsdoc.name.LONGNAMES.ANONYMOUS + jsdoc.name.SCOPE.PUNC.INNER; } else { - result = (doclet.longname || doclet.name) + jsdoc.name.SCOPE.PUNC.INNER; + result = doclet.longname + jsdoc.name.SCOPE.PUNC.INNER; } } else { @@ -341,12 +341,11 @@ Parser.prototype.astnodeToMemberof = function(node) { // do we know that it's a global? doclet = this.refs[jsdoc.name.LONGNAMES.GLOBAL]; + if ( doclet && definedInScope(doclet, basename) ) { result = [doclet.meta.vars[basename], basename]; } - - // have we seen the node's parent? if so, use that - else if (node.parent) { + else { doclet = this._getDoclet(node.parent.nodeId); // set the result if we found a doclet. (if we didn't, the AST node may describe a