docs: def graph_look_up(self, _from, _startWith, _connectFromField, _connectToField,
                        _as, _maxDepth=None, _depthField=None, _restrictSearchWithMatch=None):
          """
          Performs a recursive search on a collection, with options for restricting the search by recursion depth and query filter.
          :param _from: Target collection for the $graphLookup operation to search, recursively matching the connectFromField to the connectToField.
          :param _startWith: Expression that specifies the value of the connectFromField with which to start the recursive search.
          :param _connectFromField: Field name whose value $graphLookup uses to recursively match against the connectToField of other documents in the collection.
          :param _connectToField: Field name in other documents against which to match the value of the field specified by the connectFromField parameter.
          :param _as: Name of the array field added to each output document.
          :param _maxDepth: Non-negative integral number specifying the maximum recursion depth.
          :param _depthField: Name of the field to add to each traversed document in the search path.
          :param _restrictSearchWithMatch: A document specifying additional conditions for the recursive search.
          :return: The current object
          """
          query = {
              'from': _from,
              'startWith': _startWith,
              'connectFromField': _connectFromField,
              'connectToField': _connectToField,
              'as': _as
          }
          if _maxDepth:
              query['maxDepth'] = _maxDepth
          if _depthField:
              query['depthField'] = _depthField
          if _restrictSearchWithMatch:
              query['restrictSearchWithMatch'] = _restrictSearchWithMatch
          self._q.append({'$graphLookup': query})
          return self