diff options
author | Andy Wingo <wingo@pobox.com> | 2011-01-05 18:24:32 -0600 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2011-01-07 09:18:36 -0800 |
commit | ad5cbc470f2cc29d63a735871883a9436e0915d5 (patch) | |
tree | 365954292da2df719d8aea402bc20608370666bf /libguile/symbols.c | |
parent | d40e1ca893149e9781bad54ac1e39d03e7be988f (diff) | |
download | guile-ad5cbc470f2cc29d63a735871883a9436e0915d5.tar.gz |
add scm_from_{latin1,utf8}_symbol{n,}
* libguile/symbols.c (scm_from_latin1_symbol, scm_from_latin1_symboln)
(scm_from_utf8_symbol, scm_from_utf8_symboln): New functions.
Diffstat (limited to 'libguile/symbols.c')
-rw-r--r-- | libguile/symbols.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/libguile/symbols.c b/libguile/symbols.c index c77749f11..9a59b6a8e 100644 --- a/libguile/symbols.c +++ b/libguile/symbols.c @@ -443,6 +443,32 @@ scm_take_locale_symbol (char *sym) return scm_take_locale_symboln (sym, (size_t)-1); } +SCM +scm_from_latin1_symbol (const char *sym) +{ + return scm_from_latin1_symboln (sym, -1); +} + +SCM +scm_from_latin1_symboln (const char *sym, size_t len) +{ + SCM str = scm_from_latin1_stringn (sym, len); + return scm_i_str2symbol (str); +} + +SCM +scm_from_utf8_symbol (const char *sym) +{ + return scm_from_utf8_symboln (sym, -1); +} + +SCM +scm_from_utf8_symboln (const char *sym, size_t len) +{ + SCM str = scm_from_utf8_stringn (sym, len); + return scm_i_str2symbol (str); +} + void scm_symbols_prehistory () { |