anchor.diff:      return driver;
     }
   
  -  /**
  -   * Return an analysis options object containing the default option values.
  -   */
  +  /// Return an analysis options object containing the default option values.
     AnalysisOptions createDefaultOptions() {
       AnalysisOptions defaultOptions = builderOptions.defaultOptions;
       if (defaultOptions == null) {
  
positive.code:   }
  }
  
  /**
   * Options used by a [ContextBuilder].
   */
  class ContextBuilderOptions {
    /**
     * The results of parsing the command line arguments as defined by
     * [defineAnalysisArguments] or `null` if none.
     */
    ArgResults argResults;
  
    /**
     * The file path of the file containing the summary of the SDK that should be
     * used to "analyze" the SDK. This option should only be specified by
     * command-line tools such as 'dartanalyzer' or 'ddc'.
     */
    String dartSdkSummaryPath;
  
    /**
     * The file path of the analysis options file that should be used in place of
     * any file in the root directory or a parent of the root directory, or `null`
     * if the normal lookup mechanism should be used.
     */
    String defaultAnalysisOptionsFilePath;
  
    /**
     * A table mapping variable names to values for the declared variables, or
     * `null` if no additional variables should be declared.
     */
    Map<String, String> declaredVariables;
  
    /**
     * The default analysis options that should be used unless some or all of them
     * are overridden in the analysis options file, or `null` if the default
     * defaults should be used.
     */
    AnalysisOptions defaultOptions;
  
    /**
     * The file path of the .packages file that should be used in place of any
     * file found using the normal (Package Specification DEP) lookup mechanism,
     * or `null` if the normal lookup mechanism should be used.
     */
    String defaultPackageFilePath;
  
    /**
     * The file path of the packages directory that should be used in place of any
     * file found using the normal (Package Specification DEP) lookup mechanism,
     * or `null` if the normal lookup mechanism should be used.
     */
    String defaultPackagesDirectoryPath;
  
    /**
     * A list of the paths of summary files that are to be used, or `null` if no
     * summary information is available.
     */
    List<String> librarySummaryPaths;
  
    /**
     * Initialize a newly created set of options
     */
    ContextBuilderOptions();
  }
  
  /**
   * Given a package map, check in each package's lib directory for the existence
   * of an `_embedder.yaml` file. If the file contains a top level YamlMap, it
   * will be added to the [embedderYamls] map.
   */
  class EmbedderYamlLocator {
    /**
     * The name of the embedder files being searched for.
     */
    static const String EMBEDDER_FILE_NAME = '_embedder.yaml';
  
    /**
     * A mapping from a package's library directory to the parsed YamlMap.
     */
    final Map<Folder, YamlMap> embedderYamls = HashMap<Folder, YamlMap>();
  
    /**
     * Initialize a newly created locator by processing the packages in the given
     * [packageMap].
     */
    EmbedderYamlLocator(Map<String, List<Folder>> packageMap) {
      if (packageMap != null) {
        _processPackageMap(packageMap);
      }
    }
  
    /**
     * Initialize with the given [libFolder] of `sky_engine` package.
     */
    EmbedderYamlLocator.forLibFolder(Folder libFolder) {
      _processPackage([libFolder]);
    }
  
    /**
     * Programmatically add an `_embedder.yaml` mapping.
     */
    void addEmbedderYaml(Folder libDir, String embedderYaml) {
      _processEmbedderYaml(libDir, embedderYaml);
    }
  
    /**
     * Refresh the map of located files to those found by processing the given
     * [packageMap].
     */
    void refresh(Map<String, List<Folder>> packageMap) {
      // Clear existing.
      embedderYamls.clear();
  
negative.code:     return Packages(map);
    }
  
    /// Resolve any symbolic links encoded in the path to the given [folder].
    String resolveSymbolicLink(Folder folder) {
      try {
        return folder.resolveSymbolicLinksSync().path;
  