anchor.diff:  import 'cache.dart';
   
   import '../markdown_processor.dart' show Documentation, renderMarkdownToHtml;
  +import 'package:analyzer/src/generated/source_io.dart';
   
   int byName(Nameable a, Nameable b) =>
       a.name.toUpperCase().compareTo(b.name.toUpperCase());
  
positive.code:     if (_lineNumber != null && _sourceFilePath != null) {
        String packageName = library.package.isSdk ? "sdk" : library.package.name;
        String packageVersion = library.package.version;
        var root = library.package.packageMeta.resolvedDir.replaceAll("\\", "/");
        var sourceFilePath = _sourceFilePath
            .replaceAll("\\", "/")
            .replaceAll(root, "")
  
negative.code:   String get _sourceFilePath {
      var node = element.computeNode();
      if (node is Declaration && (node as Declaration).element != null) {
        return ((node as Declaration).element.source as FileBasedSource)
            .file
            .toString();
      } else {
        return null;
      }
  