anchor.diff:        while (true) {
           await _hasWork.signal;
   
  -        // TODO(scheglov) implement state transitioning
           if (analysisSection == null) {
             analysisSection = _logger.enter('Analyzing');
           }
  
positive.code: 
    AnalysisResult(this.path, this.uri, this.content, this.contentHash, this.unit,
        this.errors);
  }
  
  /**
  
negative.code:    */
    final _Monitor _hasWork = new _Monitor();
  
    /**
     * The controller for the [status] stream.
     */
    final _statusController = new StreamController<AnalysisStatus>();
  
    /**
     * The last status sent to the [status] stream.
     */
    AnalysisStatus _currentStatus = AnalysisStatus.IDLE;
  
    AnalysisDriver(this._logger, this._resourceProvider, this._byteStore,
        this._contentCache, this._sourceFactory, this._analysisOptions) {
      _sdkBundle = _sourceFactory.dartSdk.getLinkedBundle();
  