presage
0.8.8
Main Page
Classes
Files
File List
File Members
src
lib
presageException.h
Go to the documentation of this file.
1
2
/******************************************************
3
* Presage, an extensible predictive text entry system
4
* ---------------------------------------------------
5
*
6
* Copyright (C) 2008 Matteo Vescovi <matteo.vescovi@yahoo.co.uk>
7
8
This program is free software; you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation; either version 2 of the License, or
11
(at your option) any later version.
12
13
This program is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16
GNU General Public License for more details.
17
18
You should have received a copy of the GNU General Public License along
19
with this program; if not, write to the Free Software Foundation, Inc.,
20
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
21
*
22
**********(*)*/
23
24
25
#ifndef PRESAGE_EXCEPTION
26
#define PRESAGE_EXCEPTION
27
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
32
typedef
enum
33
{
34
PRESAGE_OK
= 0,
/* successful result */
35
PRESAGE_ERROR
,
/* generic/unknown presage error */
36
PRESAGE_TOKEN_PREFIX_MISMATCH_ERROR
,
37
PRESAGE_SMOOTHED_NGRAM_PREDICTOR_LEARN_ERROR
,
38
PRESAGE_CONFIG_VARIABLE_ERROR
,
39
PRESAGE_INVALID_CALLBACK_ERROR
,
40
PRESAGE_INVALID_SUGGESTION_ERROR
,
41
PRESAGE_INIT_PREDICTOR_ERROR
,
42
PRESAGE_SQLITE_OPEN_DATABASE_ERROR
,
43
PRESAGE_SQLITE_EXECUTE_SQL_ERROR
44
}
presage_error_code_t
;
45
46
#ifdef __cplusplus
47
}
48
#endif
49
50
51
#ifdef __cplusplus
52
#ifndef _MSC_VER
53
54
#include <exception>
55
#include <string>
56
67
class
PresageException
:
public
std::exception {
68
public
:
69
PresageException
(
presage_error_code_t
code
,
const
std::string& msg)
throw
()
70
:
m_details
(msg),
71
m_code
(
code
)
72
{
73
// intentionally empty
74
}
75
76
virtual
~PresageException
() throw()
77
{
78
// intentionally empty
79
}
80
81
virtual
const
char
*
what
()
const
throw()
82
{
83
return
m_details
.c_str();
84
}
85
86
virtual
const
presage_error_code_t
code
()
const
throw()
87
{
88
return
m_code
;
89
}
90
91
private
:
92
std::string
m_details
;
93
presage_error_code_t
m_code
;
94
95
};
96
97
#endif
/* _MSC_VER */
98
#endif
/* __cplusplus */
99
100
#endif
/* PRESAGE_EXCEPTION */
Generated on Tue Apr 8 2014 13:23:51 for presage by
1.8.1.2