[uim-commit] r2195 - branches/r5rs/sigscheme
yamaken at freedesktop.org
yamaken at freedesktop.org
Sun Nov 20 09:22:10 PST 2005
Author: yamaken
Date: 2005-11-20 09:22:07 -0800 (Sun, 20 Nov 2005)
New Revision: 2195
Modified:
branches/r5rs/sigscheme/debug.c
branches/r5rs/sigscheme/main.c
branches/r5rs/sigscheme/sigscheme.h
branches/r5rs/sigscheme/sigschemeinternal.h
Log:
* sigscheme/sigschemeinternal.h
- (Scm_writess_func): New variable decl
* sigscheme/debug.c
- (Scm_writess_func): New variable
* sigscheme/sigscheme.h
- (SCM_WRITESS_TO_PORT): New macro
* sigscheme/main.c
- (repl_loop): Simplify write/ss invocation with SCM_WRITESS_TO_PORT()
Modified: branches/r5rs/sigscheme/debug.c
===================================================================
--- branches/r5rs/sigscheme/debug.c 2005-11-20 17:15:38 UTC (rev 2194)
+++ branches/r5rs/sigscheme/debug.c 2005-11-20 17:22:07 UTC (rev 2195)
@@ -93,6 +93,13 @@
/*=======================================
Variable Declarations
=======================================*/
+void (*Scm_writess_func)(ScmObj port, ScmObj obj)
+#if SCM_USE_SRFI38
+ = &SigScm_WriteToPortWithSharedStructure;
+#else
+ = &SigScm_WriteToPort;
+#endif
+
static int debug_mask;
#if SCM_USE_SRFI38
static write_ss_context *write_ss_ctx; /* misc info in priting shared structures */
Modified: branches/r5rs/sigscheme/main.c
===================================================================
--- branches/r5rs/sigscheme/main.c 2005-11-20 17:15:38 UTC (rev 2194)
+++ branches/r5rs/sigscheme/main.c 2005-11-20 17:22:07 UTC (rev 2195)
@@ -126,11 +126,7 @@
result = EVAL(s_exp, SCM_INTERACTION_ENV);
#endif /* SCM_USE_SRFI34 */
-#if SCM_USE_SRFI38
- SigScm_WriteToPortWithSharedStructure(scm_current_output_port, result);
-#else
- SigScm_WriteToPort(scm_current_output_port, result);
-#endif
+ SCM_WRITESS_TO_PORT(scm_current_output_port, result);
SigScm_PortNewline(scm_current_output_port);
if (is_prompt)
Modified: branches/r5rs/sigscheme/sigscheme.h
===================================================================
--- branches/r5rs/sigscheme/sigscheme.h 2005-11-20 17:15:38 UTC (rev 2194)
+++ branches/r5rs/sigscheme/sigscheme.h 2005-11-20 17:22:07 UTC (rev 2195)
@@ -177,6 +177,10 @@
*/
#include "baseport.h"
+/* FIXME: rewrite all #ifdef'ed SigScm_WriteToPortWithSharedStructure()
+ invocation with this */
+#define SCM_WRITESS_TO_PORT(port, obj) ((*Scm_writess_func)(port, obj))
+
/*=======================================
Struct Declarations
=======================================*/
Modified: branches/r5rs/sigscheme/sigschemeinternal.h
===================================================================
--- branches/r5rs/sigscheme/sigschemeinternal.h 2005-11-20 17:15:38 UTC (rev 2194)
+++ branches/r5rs/sigscheme/sigschemeinternal.h 2005-11-20 17:22:07 UTC (rev 2195)
@@ -71,6 +71,8 @@
extern ScmObj SigScm_features;
extern const ScmSpecialCharInfo Scm_special_char_table[];
+extern void (*Scm_writess_func)(ScmObj port, ScmObj obj);
+
/* datas.c */
#if SCM_USE_VALUECONS
extern ScmObj SigScm_null_values;
More information about the uim-commit
mailing list