mrdocs::operator==

Equality for two polymorphic attributes.

Synopsis

bool
operator==(
    Polymorphic<Attribute> const& lhs,
    Polymorphic<Attribute> const& rhs);

Description

Declared here, next to operator<=>, and defined out of line in Attributes.cpp. It must be visible wherever Polymorphic<Attribute> is compared, so that equality_comparable<Polymorphic<Attribute>> holds (for example when an Optional<Polymorphic<Attribute>> member is compared through the reflected operator<=>). Keeping the body out of line also keeps it away from the kind registration hazard that a header‐inline body would hit (see Attributes.cpp).

Return Value

true if the objects are equal, false otherwise

Parameters

Name

Description

lhs

The left operand

rhs

The right operand

Created with MrDocs