From 8923f6a3b87cdf5c58f1839052320ea8773e1f7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antti=20Ker=C3=A4nen?= Date: Sun, 5 Jun 2022 10:20:39 +0300 Subject: [PATCH] ffi: make bqn_evalCStr use a constant string --- include/bqnffi.h | 2 +- src/core/chrarr.h | 2 +- src/ffi.c | 2 +- src/utils/utf.c | 4 ++-- src/utils/utf.h | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/include/bqnffi.h b/include/bqnffi.h index 7a9d152d..c02c539f 100644 --- a/include/bqnffi.h +++ b/include/bqnffi.h @@ -25,7 +25,7 @@ BQNV bqn_call2(BQNV f, BQNV w, BQNV x); // evaluate BQN code in a fresh environment BQNV bqn_eval(BQNV src); -BQNV bqn_evalCStr(char* str); // evaluates the null-terminated UTF8-encoded str; equal to `BQNV s = bqn_makeUTF8Str(str, strlen(str)); result = bqn_eval(s); bqn_free(s);` +BQNV bqn_evalCStr(const char* str); // evaluates the null-terminated UTF8-encoded str; equal to `BQNV s = bqn_makeUTF8Str(str, strlen(str)); result = bqn_eval(s); bqn_free(s);` // read array data diff --git a/src/core/chrarr.h b/src/core/chrarr.h index 2eaab6ec..e9a6c935 100644 --- a/src/core/chrarr.h +++ b/src/core/chrarr.h @@ -20,7 +20,7 @@ B m_str8(usz sz, char* s); B m_str8l(char* s); B m_str32(u32* s); -B fromUTF8l(char* x); +B fromUTF8l(const char* x); B fromUTF8a(I8Arr* x); C8Arr* cpyC8Arr (B x); // consumes diff --git a/src/ffi.c b/src/ffi.c index 4d2f8222..ada50da4 100644 --- a/src/ffi.c +++ b/src/ffi.c @@ -49,7 +49,7 @@ BQNV bqn_call2(BQNV f, BQNV w, BQNV x) { BQNV bqn_eval(BQNV src) { return makeX(bqn_exec(inc(getB(src)), bi_N, bi_N)); } -BQNV bqn_evalCStr(char* str) { +BQNV bqn_evalCStr(const char* str) { return makeX(bqn_exec(fromUTF8l(str), bi_N, bi_N)); } diff --git a/src/utils/utf.c b/src/utils/utf.c index 9445cdf3..e6823be4 100644 --- a/src/utils/utf.c +++ b/src/utils/utf.c @@ -19,7 +19,7 @@ static u32 utf8_p(u8* p) { } } -B fromUTF8(char* s, i64 len) { +B fromUTF8(const char* s, i64 len) { u64 sz = 0; i64 j = 0; while (true) { @@ -45,7 +45,7 @@ B fromUTF8(char* s, i64 len) { } } -B fromUTF8l(char* s) { +B fromUTF8l(const char* s) { return fromUTF8(s, strlen(s)); } diff --git a/src/utils/utf.h b/src/utils/utf.h index 92b466ec..ee5e011b 100644 --- a/src/utils/utf.h +++ b/src/utils/utf.h @@ -1,7 +1,7 @@ #pragma once -B fromUTF8(char* s, i64 len); -B fromUTF8l(char* s); +B fromUTF8(const char* s, i64 len); +B fromUTF8l(const char* s); void printUTF8(u32 c); void fprintUTF8(FILE* f, u32 c);