def _query(self) -> async_query.AsyncQuery: """Query factory. Returns: :class:`~google.cloud.firestore_v1.query.Query` """ return async_query.AsyncQuery(self)
async def stream( self, transaction=None ) -> AsyncIterator[async_document.DocumentSnapshot]: """Read the documents in this collection. This sends a ``RunQuery`` RPC and then returns an iterator which consumes each document returned in the stream of ``RunQueryResponse`` messages. .. note:: The underlying stream of responses will time out after the ``max_rpc_timeout_millis`` value set in the GAPIC client configuration for the ``RunQuery`` API. Snapshots not consumed from the iterator before that point will be lost. If a ``transaction`` is used and it already has write operations added, this method cannot be used (i.e. read-after-write is not allowed). Args: transaction (Optional[:class:`~google.cloud.firestore_v1.transaction.\ Transaction`]): An existing transaction that the query will run in. Yields: :class:`~google.cloud.firestore_v1.document.DocumentSnapshot`: The next document that fulfills the query. """ query = async_query.AsyncQuery(self) async for d in query.stream(transaction=transaction): yield d # pytype: disable=name-error