docs: function Entry(entry, source, lang) {
    entry = normalizeEOL(entry);
  
    this.entry = entry;
    this.lang = lang == null ? 'js' : lang;
    this.parsed = util.parse(entry.replace(/(\*)\/\s*.+$/, '*'));
    this.source = normalizeEOL(source);
    this.getCall = _.memoize(this.getCall);
    this.getCategory = _.memoize(this.getCategory);
    this.getDesc = _.memoize(this.getDesc);
    this.getExample = _.memoize(this.getExample);
    this.getHash = _.memoize(this.getHash);
    this.getLineNumber = _.memoize(this.getLineNumber);
    this.getName = _.memoize(this.getName);
    this.getRelated = _.memoize(this.getRelated);
    this.getReturns = _.memoize(this.getReturns);
    this.getSince = _.memoize(this.getSince);
    this.getType = _.memoize(this.getType);
    this.isAlias = _.memoize(this.isAlias);
    this.isCtor = _.memoize(this.isCtor);
    this.isFunction = _.memoize(this.isFunction);
    this.isLicense = _.memoize(this.isLicense);
    this.isPlugin = _.memoize(this.isPlugin);
    this.isPrivate = _.memoize(this.isPrivate);
    this.isStatic = _.memoize(this.isStatic);
    this._aliases = this._members = this._params = undefined;
  }