mirror of
https://github.com/jsdoc/jsdoc.git
synced 2025-12-08 19:46:11 +00:00
chore(jsdoc): remove jsdoc/env from parser
This commit is contained in:
parent
5dccf920ef
commit
081cddf43d
@ -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);
|
||||
|
||||
@ -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);
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user