diff options
author | Mike Pall <mike> | 2013-05-13 10:15:07 +0200 |
---|---|---|
committer | Mike Pall <mike> | 2013-05-13 10:15:07 +0200 |
commit | 8f90a1279e125a8cb9727751f76fb75214208f89 (patch) | |
tree | b65706b5b10231780735fcf80966e14f616f39b7 /src/lj_buf.h | |
parent | 625ffca739a703906fbc321ef9405514d72480fe (diff) | |
download | luajit-8f90a1279e125a8cb9727751f76fb75214208f89.tar.gz luajit-8f90a1279e125a8cb9727751f76fb75214208f89.tar.bz2 luajit-8f90a1279e125a8cb9727751f76fb75214208f89.zip |
Big renaming of string buffer/formatting/conversion functions.
Diffstat (limited to 'src/lj_buf.h')
-rw-r--r-- | src/lj_buf.h | 53 |
1 files changed, 28 insertions, 25 deletions
diff --git a/src/lj_buf.h b/src/lj_buf.h index 6931a693..951d39fd 100644 --- a/src/lj_buf.h +++ b/src/lj_buf.h | |||
@@ -20,28 +20,10 @@ | |||
20 | #define setsbufP(sb, q) (setmref((sb)->p, (q))) | 20 | #define setsbufP(sb, q) (setmref((sb)->p, (q))) |
21 | #define setsbufL(sb, l) (setmref((sb)->L, (l))) | 21 | #define setsbufL(sb, l) (setmref((sb)->L, (l))) |
22 | 22 | ||
23 | LJ_FUNC char * LJ_FASTCALL lj_buf_tmp(lua_State *L, MSize sz); | 23 | /* Buffer management */ |
24 | LJ_FUNC void LJ_FASTCALL lj_buf_grow(SBuf *sb, char *en); | 24 | LJ_FUNC void LJ_FASTCALL lj_buf_grow(SBuf *sb, char *en); |
25 | LJ_FUNC void LJ_FASTCALL lj_buf_shrink(lua_State *L, SBuf *sb); | 25 | LJ_FUNC void LJ_FASTCALL lj_buf_shrink(lua_State *L, SBuf *sb); |
26 | 26 | LJ_FUNC char * LJ_FASTCALL lj_buf_tmp(lua_State *L, MSize sz); | |
27 | LJ_FUNC char *lj_buf_wmem(char *p, const void *q, MSize len); | ||
28 | LJ_FUNC SBuf * lj_buf_putmem(SBuf *sb, const void *q, MSize len); | ||
29 | #if LJ_HASJIT | ||
30 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putstr(SBuf *sb, GCstr *s); | ||
31 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putchar(SBuf *sb, int c); | ||
32 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putint(SBuf *sb, int32_t k); | ||
33 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putnum(SBuf *sb, cTValue *o); | ||
34 | #endif | ||
35 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_reverse(SBuf *sb, GCstr *s); | ||
36 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_lower(SBuf *sb, GCstr *s); | ||
37 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_upper(SBuf *sb, GCstr *s); | ||
38 | LJ_FUNC SBuf *lj_buf_putstr_rep(SBuf *sb, GCstr *s, int32_t rep); | ||
39 | LJ_FUNC SBuf *lj_buf_puttab(SBuf *sb, GCtab *t, GCstr *sep, | ||
40 | int32_t i, int32_t e); | ||
41 | LJ_FUNCA GCstr * LJ_FASTCALL lj_buf_tostr(SBuf *sb); | ||
42 | LJ_FUNC GCstr *lj_buf_cat2str(lua_State *L, GCstr *s1, GCstr *s2); | ||
43 | LJ_FUNC uint32_t LJ_FASTCALL lj_buf_ruleb128(const char **pp); | ||
44 | LJ_FUNC char * LJ_FASTCALL lj_buf_wuleb128(char *p, uint32_t v); | ||
45 | 27 | ||
46 | static LJ_AINLINE void lj_buf_init(lua_State *L, SBuf *sb) | 28 | static LJ_AINLINE void lj_buf_init(lua_State *L, SBuf *sb) |
47 | { | 29 | { |
@@ -67,11 +49,6 @@ static LJ_AINLINE void lj_buf_free(global_State *g, SBuf *sb) | |||
67 | lj_mem_free(g, sbufB(sb), sbufsz(sb)); | 49 | lj_mem_free(g, sbufB(sb), sbufsz(sb)); |
68 | } | 50 | } |
69 | 51 | ||
70 | static LJ_AINLINE GCstr *lj_buf_str(lua_State *L, SBuf *sb) | ||
71 | { | ||
72 | return lj_str_new(L, sbufB(sb), sbuflen(sb)); | ||
73 | } | ||
74 | |||
75 | static LJ_AINLINE char *lj_buf_need(SBuf *sb, MSize sz) | 52 | static LJ_AINLINE char *lj_buf_need(SBuf *sb, MSize sz) |
76 | { | 53 | { |
77 | char *en = sbufB(sb) + sz; | 54 | char *en = sbufB(sb) + sz; |
@@ -88,6 +65,14 @@ static LJ_AINLINE char *lj_buf_more(SBuf *sb, MSize sz) | |||
88 | return sbufP(sb); | 65 | return sbufP(sb); |
89 | } | 66 | } |
90 | 67 | ||
68 | /* Low-level buffer put operations */ | ||
69 | LJ_FUNC char *lj_buf_wmem(char *p, const void *q, MSize len); | ||
70 | LJ_FUNC SBuf * lj_buf_putmem(SBuf *sb, const void *q, MSize len); | ||
71 | #if LJ_HASJIT | ||
72 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putchar(SBuf *sb, int c); | ||
73 | #endif | ||
74 | LJ_FUNC SBuf * LJ_FASTCALL lj_buf_putstr(SBuf *sb, GCstr *s); | ||
75 | |||
91 | static LJ_AINLINE void lj_buf_putb(SBuf *sb, int c) | 76 | static LJ_AINLINE void lj_buf_putb(SBuf *sb, int c) |
92 | { | 77 | { |
93 | char *p = lj_buf_more(sb, 1); | 78 | char *p = lj_buf_more(sb, 1); |
@@ -95,4 +80,22 @@ static LJ_AINLINE void lj_buf_putb(SBuf *sb, int c) | |||
95 | setsbufP(sb, p); | 80 | setsbufP(sb, p); |
96 | } | 81 | } |
97 | 82 | ||
83 | /* High-level buffer put operations */ | ||
84 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_reverse(SBuf *sb, GCstr *s); | ||
85 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_lower(SBuf *sb, GCstr *s); | ||
86 | LJ_FUNCA SBuf * LJ_FASTCALL lj_buf_putstr_upper(SBuf *sb, GCstr *s); | ||
87 | LJ_FUNC SBuf *lj_buf_putstr_rep(SBuf *sb, GCstr *s, int32_t rep); | ||
88 | LJ_FUNC SBuf *lj_buf_puttab(SBuf *sb, GCtab *t, GCstr *sep, | ||
89 | int32_t i, int32_t e); | ||
90 | |||
91 | /* Miscellaneous buffer operations */ | ||
92 | LJ_FUNCA GCstr * LJ_FASTCALL lj_buf_tostr(SBuf *sb); | ||
93 | LJ_FUNC GCstr *lj_buf_cat2str(lua_State *L, GCstr *s1, GCstr *s2); | ||
94 | LJ_FUNC uint32_t LJ_FASTCALL lj_buf_ruleb128(const char **pp); | ||
95 | |||
96 | static LJ_AINLINE GCstr *lj_buf_str(lua_State *L, SBuf *sb) | ||
97 | { | ||
98 | return lj_str_new(L, sbufB(sb), sbuflen(sb)); | ||
99 | } | ||
100 | |||
98 | #endif | 101 | #endif |