mimic++ v4
Loading...
Searching...
No Matches
Fwd.hpp
Go to the documentation of this file.
1// // Copyright Dominic (DNKpp) Koepke 2024 - 2024.
2// // Distributed under the Boost Software License, Version 1.0.
3// // (See accompanying file LICENSE_1_0.txt or copy at
4// // https://www.boost.org/LICENSE_1_0.txt)
5
6#ifndef MIMICPP_FWD_HPP
7#define MIMICPP_FWD_HPP
8
9#pragma once
10
11#include <string>
12#include <string_view>
13
14namespace mimicpp::call
15{
16 template <typename Return, typename... Args>
17 class Info;
18}
19
20namespace mimicpp
21{
27 template <typename Signature>
29
35 template <typename Signature>
37
43 template <typename Signature>
45
51 template <typename Signature>
53
59 template <typename Signature>
61
67 template <typename Signature>
69
75 template <typename Signature>
77
83 template <typename Signature>
85
91 template <std::size_t index, typename Signature>
93
99 template <std::size_t index, typename Signature>
101
107 template <typename Signature>
109
115 template <typename Signature>
117
118 template <typename First, typename Second>
120
127 template <typename First, typename Second>
129
136 template <typename First, typename... Others>
138
145 template <typename First, typename... Others>
146 inline constexpr bool is_overload_set_v = is_overload_set<First, Others...>::value;
147
153 template <std::size_t byteCount>
155
161 template <std::size_t byteCount>
163
164 template <typename T>
165 struct is_character;
166
167 template <typename T>
169
170 template <typename Signature>
171 requires std::same_as<Signature, signature_decay_t<Signature>>
173
174 template <typename Signature>
175 requires std::same_as<Signature, signature_decay_t<Signature>>
177
178 class ScopedExpectation;
179
180 enum class MatchResult
181 {
182 none,
184 full
185 };
186
187 enum class Constness
188 {
189 non_const = 0b01,
190 as_const = 0b10,
192 };
193
194 enum class ValueCategory
195 {
196 lvalue = 0b01,
197 rvalue = 0b10,
198 any = lvalue | rvalue
199 };
200
201 class CallReport;
202 class MatchReport;
203 class ExpectationReport;
204
205 using CharT = char;
206 using CharTraitsT = std::char_traits<CharT>;
207 using StringT = std::basic_string<CharT, CharTraitsT>;
208 using StringViewT = std::basic_string_view<CharT, CharTraitsT>;
209}
210
212{
213 enum Tag
214 : std::ptrdiff_t
215 {
216 };
217
218 enum class Id
219 : int
220 {
221 };
222
223 struct rating
224 {
225 int priority{};
227
228 [[nodiscard]]
229 friend bool operator==(const rating&, const rating&) = default;
230 };
231}
232
233#endif
Collects all expectations for a specific (decayed) signature.
Definition Fwd.hpp:176
The base interface for expectations.
Definition Fwd.hpp:172
Takes the ownership of an expectation and check whether it's satisfied during destruction.
Definition Expectation.hpp:568
Definition Fwd.hpp:17
constexpr bool is_overload_set_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:146
constexpr bool is_overloadable_with_v
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:128
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:36
typename signature_decay< Signature >::type signature_decay_t
Convenience alias, exposing the type member alias of the actual type-trait.
Definition Fwd.hpp:68
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:116
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:100
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:52
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:84
typename uint_with_size< byteCount >::type uint_with_size_t
Convenience constant, exposing the value member of the actual type-trait.
Definition Fwd.hpp:162
Definition Call.hpp:20
Definition Fwd.hpp:212
Tag
Definition Fwd.hpp:215
Id
Definition Fwd.hpp:220
Definition BoostTest.hpp:20
MatchResult
Definition Fwd.hpp:181
char CharT
Definition Fwd.hpp:205
std::char_traits< CharT > CharTraitsT
Definition Fwd.hpp:206
ValueCategory
Definition Fwd.hpp:195
Constness
Definition Fwd.hpp:188
std::basic_string_view< CharT, CharTraitsT > StringViewT
Definition Fwd.hpp:208
std::basic_string< CharT, CharTraitsT > StringT
Definition Fwd.hpp:207
Primary template, which always yields false.
Definition String.hpp:105
Primary template, purposely undefined.
Definition Fwd.hpp:137
Definition TypeTraits.hpp:655
Definition Fwd.hpp:224
Tag tag
Definition Fwd.hpp:226
int priority
Definition Fwd.hpp:225
friend bool operator==(const rating &, const rating &)=default
Primary template, purposely undefined.
Definition Fwd.hpp:28
Primary template, purposely undefined.
Definition Fwd.hpp:60
Primary template, purposely undefined.
Definition Fwd.hpp:108
Primary template, purposely undefined.
Definition Fwd.hpp:92
Primary template, purposely undefined.
Definition Fwd.hpp:44
Primary template, purposely undefined.
Definition Fwd.hpp:76
Definition Fwd.hpp:168
Primary template, purposely undefined.
Definition Fwd.hpp:154