anchor.diff:      }
       return field;
     }
  -  
  -  
  +
  +
     final String name;
     FieldSelector(this.name, {Selector parent}) : super(parent);
  -  
  +
     /**
      * matches the path against `this`.
  -   * 
  +   *
      * If [:matchSubpaths:] is `true`, then subpaths will be allowed in the match
      * (so `items.characteristics.followers` will match against `items`)
      * [:matchDepth:] is the depth of the selector which the match occurs.
  -   * 
  +   *
      */
     bool _matchPath(FieldPath path, {bool matchSubpaths: true, int matchDepth: 0}) {
       if (matchSubpaths) {
  
positive.code:    * The content of the token.
     */
    final String content;
    
    int get length => content.length;
    
    _Token(this.type, this.content);
  }
  
  
negative.code:       return parent._matchPath(path, matchSubpaths: false, matchDepth: matchDepth);
      }
    }
  
    /**
     * Apply the selector directly to the map.
     */
    dynamic _filterMap(Map<String,dynamic> map) => {name: map[name]};
  
    bool operator ==(Object other) =>
        other is FieldSelector &&
        other.parent == parent &&
        other.name == name;
  
    int get hashCode => qcore.hash2(parent, name);
    String toString() => (parent != null) ? "$parent/$name" : name;
  }
  
  