diff options
author | Andy Wingo <wingo@pobox.com> | 2012-03-06 11:19:06 +0100 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2012-03-06 11:19:06 +0100 |
commit | 4164dd6d1f97505748a8476f2524efff87be4bb0 (patch) | |
tree | c5e472fa6f2b928f575807486e240de0cdccd261 /libguile/print.h | |
parent | f6e6b5181aaf068d06709d94e765b9ff5ecb2eaa (diff) | |
download | guile-4164dd6d1f97505748a8476f2524efff87be4bb0.tar.gz |
optimize symbol printing
* libguile/print.h: Remove internal declaration of
scm_i_print_symbol_name.
* libguile/print.c (symbol_has_extended_read_syntax): Optimize to avoid
calling symbol_to_string if we know the symbol cannot be mistaken for
a number.
(print_normal_symbol): Optimize to call display_string directly,
instead of jumping through scm_display.
(print_symbol): Rename from scm_i_print_symbol_name.
(scm_print_symbol_name, iprin1): Adapt to print_symbol name change.
Diffstat (limited to 'libguile/print.h')
-rw-r--r-- | libguile/print.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libguile/print.h b/libguile/print.h index 64d1f4bd8..4a3c2f5c0 100644 --- a/libguile/print.h +++ b/libguile/print.h @@ -3,7 +3,7 @@ #ifndef SCM_PRINT_H #define SCM_PRINT_H -/* Copyright (C) 1995,1996,1998,2000,2001, 2003, 2004, 2006, 2008, 2010 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001, 2003, 2004, 2006, 2008, 2010, 2012 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public License @@ -82,7 +82,6 @@ SCM_API void scm_intprint (scm_t_intmax n, int radix, SCM port); SCM_API void scm_uintprint (scm_t_uintmax n, int radix, SCM port); SCM_API void scm_ipruk (char *hdr, SCM ptr, SCM port); SCM_API void scm_iprlist (char *hdr, SCM exp, int tlr, SCM port, scm_print_state *pstate); -SCM_INTERNAL void scm_i_print_symbol_name (SCM sym, SCM port); SCM_API void scm_print_symbol_name (const char *str, size_t len, SCM port); SCM_API void scm_prin1 (SCM exp, SCM port, int writingp); SCM_API void scm_iprin1 (SCM exp, SCM port, scm_print_state *pstate); |