docs: def stream_bloom_filters(dataset,  # type: Iterable[Sequence[Text]]
                           keys,     # type: Sequence[Sequence[bytes]]
                           schema    # type: Schema
                           ):
      # type: (...) -> Iterable[Tuple[bitarray, Text, int]]
      """ Compute composite Bloom filters (CLKs) for every record in an
          iterable dataset.
  
          :param dataset: An iterable of indexable records.
          :param schema: An instantiated Schema instance
          :param keys: A tuple of two lists of secret keys used in the HMAC.
          :return: Generator yielding bloom filters as 3-tuples
      """
      tokenizers = [tokenizer.get_tokenizer(field.hashing_properties)
                    for field in schema.fields]
      return (crypto_bloom_filter(s, tokenizers, schema, keys)
              for s in dataset)