acme
Foundational cross-platform layer of the ca2 framework
Toggle main menu visibility
Loading...
Searching...
No Matches
cancel.h
1
#pragma once
2
3
4
#include "acme/exception/exception.h"
5
6
7
template
<
typename
CONTEXT_TYPE >
8
class
cancel_exception :
9
public
::exception
10
{
11
public
:
12
13
using
CONTEXT = CONTEXT_TYPE;
14
15
::string m_strContext = ::type<CONTEXT>().name();
16
17
cancel_exception(const ::scoped_string & scopedstrMessage =
nullptr
);
18
virtual
~cancel_exception();
19
20
21
//virtual bool get_error_message(string & str,Punsigned ::i32 pnHelpContext = nullptr);
22
23
24
};
25
26
27
28
template
<
typename
CONTEXT_TYPE >
29
cancel_exception<CONTEXT_TYPE>::cancel_exception(const ::scoped_string & scopedstrMessage) :
30
exception(error_cancelled, scopedstrMessage)
31
{
32
33
}
34
template
<
typename
CONTEXT_TYPE >
35
cancel_exception<CONTEXT_TYPE>::~cancel_exception()
36
{
37
38
}
39
40
//bool cancel_exception::get_error_message(string & str,Punsigned ::i32 pnHelpContext)
41
//{
42
//
43
// str = what();
44
//
45
// return true;
46
//
47
//}
48
49
50
template
<
typename
CONTEXT_TYPE >
51
[[noreturn]]
inline
void
throw_cancel_exception(const ::scoped_string & scopedstrMessage = {})
52
{
53
54
throw
cancel_exception<CONTEXT_TYPE>
(scopedstrMessage);
55
56
}
57
58
59
[[noreturn]]
inline
void
cancel_continuation(const ::scoped_string & scopedstrMessage =
nullptr
)
60
{
61
62
throw_cancel_exception<continuation_t>(scopedstrMessage);
63
64
}
65
cancel_exception
Definition
cancel.h:10
exception
cancel.h
Generated by
1.17.0