123456789101112131415161718192021222324 |
- 'use strict';
- const ErrorReportingMixinBase = require('./mixin-base');
- const PositionTrackingPreprocessorMixin = require('../position-tracking/preprocessor-mixin');
- const Mixin = require('../../utils/mixin');
- class ErrorReportingPreprocessorMixin extends ErrorReportingMixinBase {
- constructor(preprocessor, opts) {
- super(preprocessor, opts);
- this.posTracker = Mixin.install(preprocessor, PositionTrackingPreprocessorMixin);
- this.lastErrOffset = -1;
- }
- _reportError(code) {
- //NOTE: avoid reporting error twice on advance/retreat
- if (this.lastErrOffset !== this.posTracker.offset) {
- this.lastErrOffset = this.posTracker.offset;
- super._reportError(code);
- }
- }
- }
- module.exports = ErrorReportingPreprocessorMixin;
|