4
* Copyright (c) 2006 KOGURO, Naoki (naoki@koguro.net)
6
* Permission is hereby granted, free of charge, to any person
7
* obtaining a copy of this software and associated
8
* documentation files (the "Software"), to deal in the
9
* Software without restriction, including without limitation
10
* the rights to use, copy, modify, merge, publish, distribute,
11
* sublicense, and/or sell copies of the Software, and to
12
* permit persons to whom the Software is furnished to do so,
13
* subject to the following conditions:
15
* The above copyright notice and this permission notice shall
16
* be included in all copies or substantial portions of the
19
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
20
* KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
21
* WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
22
* PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS
23
* OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
24
* OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
25
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
26
* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
typedef struct ScmObjCErrorRec {
37
SCM_CLASS_DECL(Scm_ObjCErrorClass);
38
#define SCM_CLASS_OBJC_ERROR (&Scm_ObjCErrorClass)
39
#define SCM_OBJC_ERROR(obj) ((ScmObjCError*)obj)
40
#define SCM_OBJC_ERRORP(obj) SCM_XTYPEP(obj, SCM_CLASS_OBJC_ERROR)
42
ScmObj Scm_MakeObjCError(ScmObj name, ScmObj reason);