LCOV - code coverage report
Current view: top level - boolean_selector-1.0.2/lib/src - intersection_selector.dart (source / functions) Hit Total Coverage
Test: coverage.lcov Lines: 0 13 0.0 %
Date: 2017-10-10 20:17:03 Functions: 0 0 -

          Line data    Source code
       1             : // Copyright (c) 2016, the Dart project authors.  Please see the AUTHORS file
       2             : // for details. All rights reserved. Use of this source code is governed by a
       3             : // BSD-style license that can be found in the LICENSE file.
       4             : 
       5             : import '../boolean_selector.dart';
       6             : import 'union_selector.dart';
       7             : 
       8             : /// A selector that matches inputs that both of its sub-selectors match.
       9             : class IntersectionSelector implements BooleanSelector {
      10             :   final BooleanSelector _selector1;
      11             :   final BooleanSelector _selector2;
      12             : 
      13             :   Iterable<String> get variables sync* {
      14           0 :     yield* _selector1.variables;
      15           0 :     yield* _selector2.variables;
      16             :   }
      17             : 
      18           0 :   IntersectionSelector(this._selector1, this._selector2);
      19             : 
      20             :   bool evaluate(semantics) =>
      21           0 :       _selector1.evaluate(semantics) && _selector2.evaluate(semantics);
      22             : 
      23             :   BooleanSelector intersection(BooleanSelector other) =>
      24           0 :       new IntersectionSelector(this, other);
      25             : 
      26             :   BooleanSelector union(BooleanSelector other) =>
      27           0 :       new UnionSelector(this, other);
      28             : 
      29             :   void validate(bool isDefined(String variable)) {
      30           0 :     _selector1.validate(isDefined);
      31           0 :     _selector2.validate(isDefined);
      32             :   }
      33             : 
      34           0 :   String toString() => "($_selector1) && ($_selector2)";
      35             : 
      36             :   bool operator==(other) =>
      37           0 :       other is IntersectionSelector &&
      38           0 :       _selector1 == other._selector1 &&
      39           0 :       _selector2 == other._selector2;
      40             : 
      41           0 :   int get hashCode => _selector1.hashCode ^ _selector2.hashCode;
      42             : }

Generated by: LCOV version 1.13