@private
(sourceCode, sourceName)
| 272 | |
| 273 | /** @private */ |
| 274 | _parseSourceCode(sourceCode, sourceName) { |
| 275 | let ast; |
| 276 | let e = { |
| 277 | filename: sourceName |
| 278 | }; |
| 279 | |
| 280 | this.emit('fileBegin', e); |
| 281 | logger.info('Parsing %s ...', sourceName); |
| 282 | |
| 283 | if (!e.defaultPrevented) { |
| 284 | e = { |
| 285 | filename: sourceName, |
| 286 | source: sourceCode |
| 287 | }; |
| 288 | this.emit('beforeParse', e); |
| 289 | sourceCode = e.source; |
| 290 | sourceName = e.filename; |
| 291 | |
| 292 | sourceCode = pretreat(e.source); |
| 293 | |
| 294 | ast = this._astBuilder.build(sourceCode, sourceName); |
| 295 | if (ast) { |
| 296 | this._walkAst(ast, this._visitor, sourceName); |
| 297 | } |
| 298 | } |
| 299 | |
| 300 | this.emit('fileComplete', e); |
| 301 | } |
| 302 | |
| 303 | /** @private */ |
| 304 | _walkAst(ast, visitor, sourceName) { |