This commit is contained in:
Jeff Williams 2014-03-26 21:19:08 -07:00
parent 463065d996
commit 778ea31bd6

View File

@ -34,6 +34,10 @@ var MODULE_PREFIX = exports.MODULE_PREFIX = 'module:';
var DEFAULT_SCOPE = SCOPE_NAMES.static; var DEFAULT_SCOPE = SCOPE_NAMES.static;
function prototypeToPunc(name) {
return name.replace(/(?:^|\.)prototype\.?/g, INSTANCE);
}
/** /**
Resolves the longname, memberof, variation and name values of the given doclet. Resolves the longname, memberof, variation and name values of the given doclet.
@param {module:jsdoc/doclet.Doclet} doclet @param {module:jsdoc/doclet.Doclet} doclet
@ -51,7 +55,7 @@ exports.resolve = function(doclet) {
// (but not in function params, which lack doclet.kind) // (but not in function params, which lack doclet.kind)
// TODO: check for specific doclet.kind values (probably function, class, and module) // TODO: check for specific doclet.kind values (probably function, class, and module)
if (name && doclet.kind) { if (name && doclet.kind) {
name = name.replace(/(?:^|\.)prototype\.?/g, INSTANCE); name = prototypeToPunc(name);
} }
doclet.name = name; doclet.name = name;
@ -61,7 +65,7 @@ exports.resolve = function(doclet) {
} }
if (memberof || doclet.forceMemberof) { // @memberof tag given if (memberof || doclet.forceMemberof) { // @memberof tag given
memberof = ('' || memberof).replace(/\.prototype\.?/g, INSTANCE); memberof = prototypeToPunc(memberof);
// the name is a fullname, like @name foo.bar, @memberof foo // the name is a fullname, like @name foo.bar, @memberof foo
if (name && name.indexOf(memberof) === 0 && name !== memberof) { if (name && name.indexOf(memberof) === 0 && name !== memberof) {
@ -206,7 +210,7 @@ exports.shorten = function(longname, forcedMemberof) {
parts, parts,
variation; variation;
longname = longname.replace(/\.prototype\.?/g, INSTANCE); longname = prototypeToPunc(longname);
if (typeof forcedMemberof !== 'undefined') { if (typeof forcedMemberof !== 'undefined') {
name = longname.substr(forcedMemberof.length); name = longname.substr(forcedMemberof.length);