*** empty log message ***
[bpt/guile.git] / libguile / gh_eval.c
index 766d9d1..46f6f97 100644 (file)
@@ -1,4 +1,4 @@
-/*      Copyright (C) 1995,1996,1997 Free Software Foundation, Inc.
+/*      Copyright (C) 1995,1996,1997,1998, 2000 Free Software Foundation, Inc.
 
  * This program is free software; you can redistribute it and/or modify
  * it under the terms of the GNU General Public License as published by
 
 #include <stdio.h>
 
-#include <gh.h>
+#include "libguile/gh.h"
 
 typedef SCM (*gh_eval_t) (void *data, SCM jmpbuf);
 
 /* Evaluate the string; toss the value.  */
-#if 0
-void
-gh_eval_str (char *scheme_code)
-{
-  /* Create a port that reads characters from SCHEME_CODE.  */
-  SCM port = scm_mkstrport (SCM_MAKINUM (0),
-                           scm_makfrom0str (scheme_code),
-                           SCM_OPN | SCM_RDNG,
-                           "guile_main");
-  SCM form;
-
-  /* Read expressions from that port; ignore the values.  */
-  while ((form = scm_read (port, SCM_BOOL_F, SCM_BOOL_F)) != SCM_EOF_VAL)
-    scm_eval_x (form);
-
-  /* Dispose of the port when done.  (Oh icky.)  */
-  scm_close_port (port);
-}
-#endif /* 0 */
-
 SCM
-gh_eval_str (char *scheme_code)
+gh_eval_str (const char *scheme_code)
 {
   return scm_eval_0str (scheme_code);
 }
 
 /* evaluate the file by passing it to the lower level scm_primitive_load() */
 SCM
-gh_eval_file (char *fname)
+gh_eval_file (const char *fname)
 {
   return scm_primitive_load (gh_str02scm (fname));
 }
 
 static SCM
-eval_str_wrapper (void *data, SCM jmpbuf)
+eval_str_wrapper (void *data)
 {
 /*   gh_eval_t real_eval_proc = (gh_eval_t) (* ((gh_eval_t *) data)); */
 
@@ -92,32 +72,32 @@ eval_str_wrapper (void *data, SCM jmpbuf)
 }
 
 SCM
-gh_eval_str_with_catch (char *scheme_code, scm_catch_handler_t handler)
+gh_eval_str_with_catch (const char *scheme_code, scm_catch_handler_t handler)
 {
   /* FIXME: not there yet */
-  return gh_catch (SCM_BOOL_T, (scm_catch_body_t) eval_str_wrapper, scheme_code,
-                  (scm_catch_handler_t) gh_standard_handler, scheme_code);
+  return gh_catch (SCM_BOOL_T, (scm_catch_body_t) eval_str_wrapper, (void *) scheme_code,
+                  (scm_catch_handler_t) handler, (void *) scheme_code);
 }
 
 SCM
-gh_eval_str_with_standard_handler (char *scheme_code)
+gh_eval_str_with_standard_handler (const char *scheme_code)
 {
   return gh_eval_str_with_catch (scheme_code, gh_standard_handler);
 }
 
 SCM
-gh_eval_str_with_stack_saving_handler (char *scheme_code)
+gh_eval_str_with_stack_saving_handler (const char *scheme_code)
 {
   return scm_internal_stack_catch (SCM_BOOL_T,
                                   (scm_catch_body_t) eval_str_wrapper,
-                                  scheme_code,
+                                  (void *) scheme_code,
                                   (scm_catch_handler_t)
                                   gh_standard_handler,
-                                  scheme_code);
+                                  (void *) scheme_code);
 }
 
 static SCM
-eval_file_wrapper (void *data, SCM jmpbuf)
+eval_file_wrapper (void *data)
 {
 /*   gh_eval_t real_eval_proc = (gh_eval_t) (* ((gh_eval_t *) data)); */
 
@@ -126,16 +106,22 @@ eval_file_wrapper (void *data, SCM jmpbuf)
 }
 
 SCM
-gh_eval_file_with_catch (char *scheme_code, scm_catch_handler_t handler)
+gh_eval_file_with_catch (const char *scheme_code, scm_catch_handler_t handler)
 {
   /* FIXME: not there yet */
   return gh_catch (SCM_BOOL_T, (scm_catch_body_t) eval_file_wrapper,
-                  scheme_code, (scm_catch_handler_t) gh_standard_handler,
-                  scheme_code);
+                  (void *) scheme_code, (scm_catch_handler_t) handler,
+                  (void *) scheme_code);
 }
 
 SCM
-gh_eval_file_with_standard_handler (char *scheme_code)
+gh_eval_file_with_standard_handler (const char *scheme_code)
 {
   return gh_eval_file_with_catch (scheme_code, gh_standard_handler);
 }
+
+/*
+  Local Variables:
+  c-file-style: "gnu"
+  End:
+*/