chore(jsdoc): remove jsdoc/env from parser

This commit is contained in:
Jeff Williams 2020-12-24 14:46:53 -08:00
parent 5dccf920ef
commit 081cddf43d
2 changed files with 9 additions and 7 deletions

View File

@ -297,7 +297,7 @@ module.exports = (() => {
const parser = require('jsdoc/src/parser');
const plugins = require('jsdoc/plugins');
props.parser = parser.createParser(env.conf.parser);
props.parser = parser.createParser(env.conf.parser, env.conf);
if (env.conf.plugins) {
plugins.installPlugins(env.conf.plugins, props.parser);

View File

@ -3,7 +3,6 @@
*/
const _ = require('lodash');
const astNode = require('jsdoc/src/astnode');
const { conf } = require('jsdoc/env');
const { EventEmitter } = require('events');
const fs = require('fs');
const { log } = require('@jsdoc/util');
@ -45,7 +44,7 @@ class DocletCache {
}
// TODO: docs
exports.createParser = type => {
exports.createParser = (type, conf) => {
let modulePath;
if (!type) {
@ -62,7 +61,7 @@ exports.createParser = type => {
return null;
}
return new (require(modulePath).Parser)();
return new (require(modulePath).Parser)(null, null, null, conf);
};
// TODO: docs
@ -90,12 +89,13 @@ function definedInScope(doclet, basename) {
*/
class Parser extends EventEmitter {
// TODO: docs
constructor(builderInstance, visitorInstance, walkerInstance) {
constructor(builderInstance, visitorInstance, walkerInstance, conf) {
super();
this.clear();
this._astBuilder = builderInstance || new (require('jsdoc/src/astbuilder').AstBuilder)();
this._conf = conf || {};
this._visitor = visitorInstance || new (require('jsdoc/src/visitor').Visitor)();
this._walker = walkerInstance || new (require('jsdoc/src/walker').Walker)();
@ -155,7 +155,7 @@ class Parser extends EventEmitter {
* var docs = jsdocParser.parse(myFiles);
*/
parse(sourceFiles, encoding) {
encoding = encoding || conf.encoding || 'utf8';
encoding = encoding || this._conf.encoding || 'utf8';
let filename = '';
let sourceCode = '';
@ -268,6 +268,7 @@ class Parser extends EventEmitter {
let e = {
filename: sourceName
};
let sourceType;
this.emit('fileBegin', e);
log.info(`Parsing ${sourceName} ...`);
@ -282,8 +283,9 @@ class Parser extends EventEmitter {
sourceName = e.filename;
sourceCode = pretreat(e.source);
sourceType = this._conf.source ? this._conf.source.type : undefined;
ast = this._astBuilder.build(sourceCode, sourceName, conf.source.type);
ast = this._astBuilder.build(sourceCode, sourceName, sourceType);
if (ast) {
this._walkAst(ast, this._visitor, sourceName);
}