FirebaseFirestore Framework Reference

FieldValue

classFieldValue:NSObject,@uncheckedSendable

Sentinel values that can be used when writing document fields withsetData() orupdateData().

  • Used withupdateData() to mark a field for deletion.

    Declaration

    Swift

    classfuncdelete()->Self
  • Used withsetData() orupdateData() to include a server-generated timestamp in the writtendata.

    Declaration

    Swift

    classfuncserverTimestamp()->Self
  • Returns a special value that can be used withsetData() orupdateData() that tells the server to union the given elements with any array value that already exists on the server. Each specified element that doesn’t already exist in the array will be added to the end. If the field being modified is not already an array it will be overwritten with an array containing exactly the specified elements.

    Declaration

    Swift

    classfuncarrayUnion(_elements:[Any])->Self

    Parameters

    elements

    The elements to union into the array.

    Return Value

    TheFieldValue sentinel for use in a call tosetData() orupdateData().

  • Returns a special value that can be used withsetData() orupdateData() that tells the server to remove the given elements from any array value that already exists on the server. All instances of each element specified will be removed from the array. If the field being modified is not already an array it will be overwritten with an empty array.

    Declaration

    Swift

    classfuncarrayRemove(_elements:[Any])->Self

    Parameters

    elements

    The elements to remove from the array.

    Return Value

    TheFieldValue sentinel for use in a call tosetData() orupdateData().

  • Returns a special value that can be used withsetData() orupdateData() that tells the server to increment the field’s current value by the given value.

    If the current value is an integer or a double, both the current and the given value will be interpreted as doubles and all arithmetic will follow IEEE 754 semantics. Otherwise, the transformation will set the field to the given value.

    Declaration

    Swift

    classfuncincrement(_d:Double)->Self

    Parameters

    d

    The double value to increment by.

    Return Value

    TheFieldValue sentinel for use in a call tosetData() orupdateData().

  • Returns a special value that can be used withsetData() orupdateData() that tells the server to increment the field’s current value by the given value.

    If the current field value is an integer, possible integer overflows are resolved to LONG_MAX or LONG_MIN. If the current field value is a double, both values will be interpreted as doubles and the arithmetic will follow IEEE 754 semantics.

    If field is not an integer or double, or if the field does not yet exist, the transformation will set the field to the given value.

    Declaration

    Swift

    classfuncincrement(_l:Int64)->Self

    Parameters

    l

    The integer value to increment by.

    Return Value

    TheFieldValue sentinel for use in a call tosetData() orupdateData().

  • Creates a newVectorValue constructed with a copy of the given array of NSNumbers.

    Parameters

    array

    Create aVectorValue instance with a copy of this array of NSNumbers.

    Return Value

    A newVectorValue constructed with a copy of the given array of NSNumbers.

  • Creates a newVectorValue constructed with a copy of the given array of Doubles.

    Declaration

    Swift

    staticfuncvector(_array:[Double])->VectorValue

    Parameters

    array

    An array of Doubles.

    Return Value

    A newVectorValue constructed with a copy of the given array of Doubles.

  • Creates a newVectorValue constructed with a copy of the given array of Floats.

    Declaration

    Swift

    staticfuncvector(_array:[Float])->VectorValue

    Parameters

    array

    An array of Floats.

    Return Value

    A newVectorValue constructed with a copy of the given array of Floats.

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2025-03-11 UTC.