Browse CVS Repository
Contents of /shiki/shiki/xyzzylisp.c
Parent Directory
| Revision Log
| Revision Graph
Revision 1.3 -
( show annotations)
( download)
( as text)
Sat Nov 25 09:10:43 2006 UTC
(17 years, 4 months ago)
by aloha
Branch: MAIN
Changes since 1.2: +10 -12 lines
File MIME type: text/x-csrc
refactoring
| 1 |
/* Generated by genstub. Do not edit. */ |
| 2 |
#include <gauche.h> |
| 3 |
#if defined(__CYGWIN__) || defined(__MINGW32__) |
| 4 |
#define SCM_CGEN_CONST /*empty*/ |
| 5 |
#else |
| 6 |
#define SCM_CGEN_CONST const |
| 7 |
#endif |
| 8 |
#include "shiki.h" |
| 9 |
static ScmObj xyzzylisp_buffer_substring(ScmObj *SCM_FP, int SCM_ARGCNT, void *data_) |
| 10 |
{ |
| 11 |
ScmObj start_scm; |
| 12 |
int start; |
| 13 |
ScmObj end_scm; |
| 14 |
int end; |
| 15 |
SCM_ENTER_SUBR("buffer-substring"); |
| 16 |
start_scm = SCM_ARGREF(0); |
| 17 |
if (!SCM_EXACTP(start_scm)) Scm_Error("C integer required, but got %S", start_scm); |
| 18 |
start = Scm_GetInteger(start_scm); |
| 19 |
end_scm = SCM_ARGREF(1); |
| 20 |
if (!SCM_EXACTP(end_scm)) Scm_Error("C integer required, but got %S", end_scm); |
| 21 |
end = Scm_GetInteger(end_scm); |
| 22 |
{ |
| 23 |
{ |
| 24 |
ScmString* SCM_RESULT; |
| 25 |
gchar *substr = Shiki_buffer_substring(start, end); |
| 26 |
if(substr) |
| 27 |
SCM_RESULT = SCM_STRING(SCM_MAKE_STR_COPYING(substr)); |
| 28 |
else |
| 29 |
SCM_RESULT = SCM_STRING(SCM_FALSE); |
| 30 |
g_free(substr); |
| 31 |
SCM_RETURN(SCM_MAKE_MAYBE(SCM_OBJ_SAFE, SCM_RESULT)); |
| 32 |
} |
| 33 |
} |
| 34 |
} |
| 35 |
|
| 36 |
static SCM_DEFINE_STRING_CONST(xyzzylisp_buffer_substring__NAME, "buffer-substring", 16, 16); |
| 37 |
static SCM_DEFINE_SUBR(xyzzylisp_buffer_substring__STUB, 2, 0, SCM_OBJ(&xyzzylisp_buffer_substring__NAME), xyzzylisp_buffer_substring, NULL, NULL); |
| 38 |
|
| 39 |
void Scm_Init_xyzzylisp(ScmModule *module) |
| 40 |
{ |
| 41 |
|
| 42 |
SCM_DEFINE(module, "buffer-substring", SCM_OBJ(&xyzzylisp_buffer_substring__STUB)); |
| 43 |
} |
| |