anchor.diff:    }
   
     /// Returns a map of [Method] objects constructed from [mirrorMap].
  -  MethodGroup _createMethods(Map<String, MethodMirror> mirrorMap) {
  +  /// The optional parameter [containingLibrary] is contains data for variables
  +  /// defined at the top level of a library (potentially for exporting
  +  /// purposes).
  +  MethodGroup _createMethods(Map<String, MethodMirror> mirrorMap,
  +      [Library containingLibrary]) {
       var group = new MethodGroup();
       mirrorMap.forEach((String mirrorName, MethodMirror mirror) {
         if (_includePrivate || !mirror.isPrivate) {
  -        group.addMethod(mirror);
  +        group.addMethod(mirror, containingLibrary);
         }
       });
       return group;
  
positive.code:   }
  
    /// Returns a map of [Variable] objects constructed from [mirrorMap].
    Map<String, Variable> _createVariables(Map<String,
        VariableMirror> mirrorMap) {
      var data = {};
      // TODO(janicejl): When map to map feature is created, replace the below
      // with a filter. Issue(#9590).
      mirrorMap.forEach((String mirrorName, VariableMirror mirror) {
        if (_includePrivate || !_isHidden(mirror)) {
          entityMap[docName(mirror)] = new Variable(mirrorName, mirror);
          data[mirrorName] = entityMap[docName(mirror)];
        }
      });
  
negative.code:     return exported;
    }
  
    /// The optional parameter [containingLibrary] is contains data for variables
    /// defined at the top level of a library (potentially for exporting
    /// purposes).
    void addMethod(MethodMirror mirror, [Library containingLibrary]) {
      var method;
      if (containingLibrary != null && mirror.owner.qualifiedName !=
          containingLibrary.mirror.qualifiedName) {
        method = new ExportedMethod(mirror, containingLibrary);
      } else {
        method = new Method(mirror);
      }
      entityMap[docName(mirror)] = method;
      if (mirror.isSetter) {
        setters[mirror.simpleName] = method;
  