The [[assume(expression)]] attribute (C++23).

Synopsis

Declared in <mrdocs/Metadata/Attribute/AssumeAttribute.hpp>

struct AssumeAttribute final
    : AttributeCommonBase<AttributeKind::Assume>

Description

States that the expression always evaluates to true at this point.

Base Classes

Name

Description

AttributeCommonBase<AttributeKind::Assume>

CRTP base that ties a concrete attribute to a fixed AttributeKind.

Static Member Functions

Name

Description

isAssume

[[assume(expression)]] (C++23)

isCarriesDependency

[[carries_dependency]] (C++11)

isDeprecated

[[deprecated]] / [[deprecated("reason")]] (C++14)

isFallthrough

[[fallthrough]] (C++17)

isIndeterminate

[[indeterminate]] (C++26)

isLikely

[[likely]] (C++20)

isMaybeUnused

[[maybe_unused]] (C++17)

isNoUniqueAddress

[[no_unique_address]] (C++20)

isNodiscard

[[nodiscard]] / [[nodiscard("reason")]] (C++17)

isNoreturn

[[noreturn]] (C++11)

isOther

An attribute mrdocs does not treat specially.

isUnlikely

[[unlikely]] (C++20)

Data Members

Name

Description

Expression

The assumed expression, as written.

Static Data Members

Name

Description

kind_id

Static discriminator for the concrete attribute.

Created with MrDocs