anchor.diff:      });
     }
   
  -  /**
  -   * Return `true` if analysis is complete.
  -   */
  +  /// Return `true` if analysis is complete.
     bool isAnalysisComplete() {
       return !analysisDriverScheduler.isAnalyzing;
     }
   
  -  /**
  -   * Return `true` if the given path is a valid `FilePath`.
  -   *
  -   * This means that it is absolute and normalized.
  -   */
  +  /// Return `true` if the given path is a valid `FilePath`.
  +  ///
  +  /// This means that it is absolute and normalized.
     bool isValidFilePath(String path) {
       return resourceProvider.pathContext.isAbsolute(path) &&
           resourceProvider.pathContext.normalize(path) == path;
     }
   
  -  /**
  -   * Trigger reanalysis of all files in the given list of analysis [roots], or
  -   * everything if the analysis roots is `null`.
  -   */
  +  /// Trigger reanalysis of all files in the given list of analysis [roots], or
  +  /// everything if the analysis roots is `null`.
     void reanalyze(List<Resource> roots) {
       // Instruct the contextDirectoryManager to rebuild all contexts from
       // scratch.
       contextManager.refresh(roots);
     }
   
  -  /**
  -   * Send the given [notification] to the client.
  -   */
  +  /// Send the given [notification] to the client.
     void sendNotification(Notification notification) {
       channel.sendNotification(notification);
     }
   
  -  /**
  -   * Send the given [response] to the client.
  -   */
  +  /// Send the given [response] to the client.
     void sendResponse(Response response) {
       channel.sendResponse(response);
     }
   
  -  /**
  -   * Sends a `server.error` notification.
  -   */
  +  /// Sends a `server.error` notification.
     void sendServerErrorNotification(
       String message,
       dynamic exception,
  
positive.code:     });
    }
  
    /**
     * Use the given updaters to update the values of the options in every
     * existing analysis context.
     */
    void updateOptions(List<OptionUpdater> optionUpdaters) {
      // TODO(scheglov) implement for the new analysis driver
  //    //
  
negative.code:         new ServerStatusParams(analysis: analysis).toNotification());
    }
  
    /// Implementation for `analysis.setAnalysisRoots`.
    ///
    /// TODO(scheglov) implement complete projects/contexts semantics.
    ///
    /// The current implementation is intentionally simplified and expected
    /// that only folders are given each given folder corresponds to the exactly
    /// one context.
    ///
    /// So, we can start working in parallel on adding services and improving
    /// projects/contexts support.
    void setAnalysisRoots(String requestId, List<String> includedPaths,
        List<String> excludedPaths, Map<String, String> packageRoots) {
      if (notificationManager != null) {
  