13#ifndef MIMICPP_DETAIL_IS_MODULE
15 #include <string_view>
20 template <
typename Return,
typename... Args>
45 template <
typename Signature>
46 struct signature_add_noexcept;
53 template <
typename Signature>
61 template <
typename Signature>
69 template <
typename Signature>
77 template <
typename Signature>
85 template <
typename Signature>
93 template <
typename Signature>
101 template <
typename Signature>
109 template <
typename Signature>
117 template <
typename Signature>
125 template <
typename Signature>
133 template <
typename Signature>
141 template <
typename Signature>
149 template <
typename Signature>
157 template <
typename Signature>
165 template <
typename Signature>
173 template <
typename Signature>
181 template <
typename Signature>
189 template <
typename Signature>
197 template <
typename Signature>
205 template <
typename Signature>
213 template <
typename Signature>
221 template <
typename Signature>
229 template <
typename Signature>
237 template <
typename Signature>
245 template <
typename Signature>
253 template <
typename Signature>
261 template <
typename Signature>
269 template <std::
size_t index,
typename Signature>
277 template <std::
size_t index,
typename Signature>
285 template <
typename Signature>
293 template <
typename Signature>
302 template <
typename Signature,
typename T>
310 template <
typename Signature,
typename T>
319 template <
typename First,
typename Second>
328 template <
typename First,
typename Second>
337 template <
typename First,
typename... Others>
346 template <
typename First,
typename... Others>
354 template <
typename Tag>
362 template <std::
size_t byteCount>
370 template <std::
size_t byteCount>
373 template <
typename T>
376 template <
typename T>
379 template <
typename Signature>
380 requires std::same_as<Signature, signature_decay_t<Signature>>
383 template <
typename Signature>
384 requires std::same_as<Signature, signature_decay_t<Signature>>
391 using StringT = std::basic_string<CharT, CharTraitsT>;
394 template <
typename FirstSignature,
typename... OtherSignatures>
420 template <
typename Id, auto priorityStrategy>
421 requires std::is_enum_v<Id>
422 && std::signed_integral<std::underlying_type_t<Id>>
423 && std::convertible_to<
424 std::invoke_result_t<
decltype(priorityStrategy),
Id,
int>,
428 template <
typename Id, auto priorityStrategy>
429 class BasicSequenceInterface;
433namespace mimicpp::detail
441 class DefaultCallInterface;
452 template <
typename Backend>
#define MIMICPP_DETAIL_MODULE_EXPORT
Definition Config.hpp:19
Collects all expectations for a specific (decayed) signature.
Definition Expectation.hpp:258
The base interface for expectations.
Definition Expectation.hpp:148
A Mock type, which fully supports overload sets.
Definition Mock.hpp:463
Takes the ownership of an expectation and check whether it's satisfied during destruction.
Definition Expectation.hpp:645
A thin wrapper around general source-location info.
Definition SourceLocation.hpp:38
A simple type-erased stacktrace abstraction.
Definition Stacktrace.hpp:196
The fallback stacktrace-backend.
Definition Stacktrace.hpp:126
constexpr bool is_overload_set_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:347
constexpr bool is_overloadable_with_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:329
typename signature_add_const_qualifier< Signature >::type signature_add_const_qualifier_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:150
typename signature_add_lvalue_ref_qualifier< Signature >::type signature_add_lvalue_ref_qualifier_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:166
typename signature_add_noexcept< Signature >::type signature_add_noexcept_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:54
typename signature_add_rvalue_ref_qualifier< Signature >::type signature_add_rvalue_ref_qualifier_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:182
typename signature_call_convention< Signature >::type signature_call_convention_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:102
constexpr Constness signature_const_qualification_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:246
typename signature_decay< Signature >::type signature_decay_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:214
constexpr bool signature_is_noexcept_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:86
typename signature_param_list< Signature >::type signature_param_list_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:294
typename signature_param_type< index, Signature >::type signature_param_type_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:278
typename signature_prepend_param< Signature, T >::type signature_prepend_param_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:311
constexpr ValueCategory signature_ref_qualification_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:262
typename signature_remove_call_convention< Signature >::type signature_remove_call_convention_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:118
typename signature_remove_const_qualifier< Signature >::type signature_remove_const_qualifier_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:198
typename signature_remove_noexcept< Signature >::type signature_remove_noexcept_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:70
typename signature_remove_ref_qualifier< Signature >::type signature_remove_ref_qualifier_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:134
typename signature_return_type< Signature >::type signature_return_type_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:230
typename uint_with_size< byteCount >::type uint_with_size_t
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:371
Tag
Definition Fwd.hpp:402
char CharT
Definition Fwd.hpp:389
std::char_traits< CharT > CharTraitsT
Definition Fwd.hpp:390
ValueCategory
Definition Fwd.hpp:34
@ lvalue
Definition Fwd.hpp:35
@ rvalue
Definition Fwd.hpp:36
Constness
Definition Fwd.hpp:27
@ any
Definition Fwd.hpp:30
@ as_const
Definition Fwd.hpp:29
@ non_const
Definition Fwd.hpp:28
std::basic_string_view< CharT, CharTraitsT > StringViewT
Definition Fwd.hpp:392
std::basic_string< CharT, CharTraitsT > StringT
Definition Fwd.hpp:391
Primary template, purposely undefined.
Definition Fwd.hpp:355
Primary template, which always yields false.
Definition String.hpp:108
Primary template.
Definition TypeTraits.hpp:1576
Primary template.
Definition TypeTraits.hpp:1539
friend bool operator==(rating const &, rating const &)=default
Tag tag
Definition Fwd.hpp:412
int priority
Definition Fwd.hpp:411
Primary template, purposely undefined.
Definition TypeTraits.hpp:940
Primary template, purposely undefined.
Definition TypeTraits.hpp:1031
Primary template, purposely undefined.
Definition TypeTraits.hpp:602
Primary template, purposely undefined.
Definition TypeTraits.hpp:1122
Primary template, purposely undefined.
Definition Fwd.hpp:94
Primary template.
Definition TypeTraits.hpp:1228
Primary template.
Definition TypeTraits.hpp:1139
typename detail::signature_remove_ref_qualifier_impl< typename detail::signature_remove_const_qualifier_impl< typename detail::signature_remove_noexcept< signature_remove_call_convention_t< Signature > >::type, false >::type, false >::type type
Definition TypeTraits.hpp:1140
Primary template.
Definition TypeTraits.hpp:620
Primary template.
Definition TypeTraits.hpp:1320
Primary template.
Definition TypeTraits.hpp:1200
Primary template.
Definition TypeTraits.hpp:1448
Primary template.
Definition TypeTraits.hpp:1251
Primary template, purposely undefined.
Definition TypeTraits.hpp:274
typename call_convention_traits< signature_call_convention_t< Signature > >::template remove_call_convention_t< Signature > type
Definition TypeTraits.hpp:275
Primary template, purposely undefined.
Definition TypeTraits.hpp:856
Primary template, purposely undefined.
Definition TypeTraits.hpp:486
Primary template, purposely undefined.
Definition TypeTraits.hpp:738
Primary template.
Definition TypeTraits.hpp:1166
Primary template, purposely undefined.
Definition Fwd.hpp:363
Trait type for stacktrace backends.
Definition Fwd.hpp:453
Definition Stacktrace.hpp:529