diff --git a/lib/jsdoc/src/visitor.js b/lib/jsdoc/src/visitor.js index 5a72b3d2..25721322 100644 --- a/lib/jsdoc/src/visitor.js +++ b/lib/jsdoc/src/visitor.js @@ -37,7 +37,7 @@ function getLeadingComment(node) { function makeVarsFinisher(scopeDoclet) { return function(e) { // no need to evaluate all things related to scopeDoclet again, just use it - if (scopeDoclet && e.doclet && e.doclet.alias) { + if ( scopeDoclet && e.doclet && (e.doclet.alias || e.doclet.memberof) ) { scopeDoclet.meta.vars[e.code.name] = e.doclet.longname; } }; diff --git a/test/specs/tags/memberoftag.js b/test/specs/tags/memberoftag.js index c62df2bc..80569920 100644 --- a/test/specs/tags/memberoftag.js +++ b/test/specs/tags/memberoftag.js @@ -80,4 +80,13 @@ describe('@memberof tag', function() { expect(leaf.longname, 'module:terrain.Forest#Tree#leaf'); }); + + it('Properties of a symbol with a @memberof tag inherit the @memberof info.', function() { + var docSet = jasmine.getDocSetFromFile('test/fixtures/memberoftag5.js'); + var open = docSet.getByLongname('module:network.Socket#open')[0]; + var uid = docSet.getByLongname('module:network.Socket.uid')[0]; + + expect(open).toBeDefined(); + expect(uid).toBeDefined(); + }); });