FirebaseFirestore Framework Reference

Functions

The following functions are available globally.

  • Combines two boolean expressions with a logical AND (&&).

    The resulting expression is true only if both the left-hand side (lhs) and the right-hand side (rhs) are true.

    // Find books in the "Fantasy" genre with a rating greater than 4.5
    firestore.pipeline()
      .collection("books")
      .where(
        Field("genre").equal("Fantasy") && Field("rating").greaterThan(4.5)
      )
    

    Declaration

    Swift

    public func && (lhs: BooleanExpression,
                    rhs: @autoclosure () throws -> BooleanExpression) rethrows -> BooleanExpression

    Parameters

    lhs

    The left-hand boolean expression.

    rhs

    The right-hand boolean expression.

    Return Value

    A new BooleanExpression representing the logical AND.

  • Combines two boolean expressions with a logical OR (||).

    The resulting expression is true if either the left-hand side (lhs) or the right-hand side (rhs) is true.

    // Find books that are either in the "Romance" genre or were published before 1900
    firestore.pipeline()
      .collection("books")
      .where(
        Field("genre").equal("Romance") || Field("published").lessThan(1900)
      )
    

    Declaration

    Swift

    public func || (lhs: BooleanExpression,
                    rhs: @autoclosure () throws -> BooleanExpression) rethrows -> BooleanExpression

    Parameters

    lhs

    The left-hand boolean expression.

    rhs

    The right-hand boolean expression.

    Return Value

    A new BooleanExpression representing the logical OR.

  • Combines two boolean expressions with a logical XOR (^).

    The resulting expression is true if the left-hand side (lhs) and the right-hand side (rhs) have different boolean values.

    // Find books that are in the "Dystopian" genre OR have a rating of 5.0, but not both.
    firestore.pipeline()
      .collection("books")
      .where(
        Field("genre").equal("Dystopian") ^ Field("rating").equal(5.0)
      )
    

    Declaration

    Swift

    public func ^ (lhs: BooleanExpression,
                   rhs: @autoclosure () throws -> BooleanExpression) rethrows -> BooleanExpression

    Parameters

    lhs

    The left-hand boolean expression.

    rhs

    The right-hand boolean expression.

    Return Value

    A new BooleanExpression representing the logical XOR.

  • Negates a boolean expression with a logical NOT (!).

    The resulting expression is true if the original expression is false, and vice versa.

    // Find books that are NOT in the "Science Fiction" genre
    firestore.pipeline()
      .collection("books")
      .where(!Field("genre").equal("Science Fiction"))
    

    Declaration

    Swift

    public prefix func ! (lhs: BooleanExpression) -> BooleanExpression

    Parameters

    lhs

    The boolean expression to negate.

    Return Value

    A new BooleanExpression representing the logical NOT.