Return true if the specified lhs and rhs represent the same value, and false otherwise. Two datums (not holding strings and user‐ defined objects) represent the same value if they have the same type of value stored inside them and invoking == operator on the stored values returns true. Two datums holding strings are equal if the strings have the same length and and values at each respective character position are also same. Two datums holding user‐defined objects are equal if the user‐defined objects have the same pointer and type values. Two nil datums are always equal. Two Datum objects holding NaN values are never equal. Two datums that hold arrays of datums have the same value if the underlying arrays have the same length and invoking == operator on each corresponding element returns true. Two datums that hold maps of datums have the same value if the underlying maps have the same size and each corresponding pair of elements in the maps have the same keys and invoking == operator on the values returns true.

Synopsis

Declared in <bdld_datum.h>

bool
operator==(
    Datum const& lhs,
    Datum const& rhs);

Created with MrDocs