aboutsummaryrefslogtreecommitdiff
path: root/ldebug.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-02-23 14:17:25 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-02-23 14:17:25 -0300
commit39b79783297bee79db9853b63d199e120a009a8f (patch)
treec738c621c4c28d8822c2f785400786301985273b /ldebug.c
parentd164e2294f73d8e69f00d95a66014514b2dd0ec0 (diff)
downloadlua-39b79783297bee79db9853b63d199e120a009a8f.tar.gz
lua-39b79783297bee79db9853b63d199e120a009a8f.tar.bz2
lua-39b79783297bee79db9853b63d199e120a009a8f.zip
first (big) step to support wide chars
Diffstat (limited to 'ldebug.c')
-rw-r--r--ldebug.c80
1 files changed, 40 insertions, 40 deletions
diff --git a/ldebug.c b/ldebug.c
index 7c605638..e42a9028 100644
--- a/ldebug.c
+++ b/ldebug.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: ldebug.c,v 1.67 2001/02/21 16:52:09 roberto Exp roberto $ 2** $Id: ldebug.c,v 1.68 2001/02/22 18:59:59 roberto Exp roberto $
3** Debug Interface 3** Debug Interface
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -24,7 +24,7 @@
24 24
25 25
26 26
27static const char *getfuncname (lua_State *L, StkId f, const char **name); 27static const l_char *getfuncname (lua_State *L, StkId f, const l_char **name);
28 28
29 29
30static void setnormalized (TObject *d, const TObject *s) { 30static void setnormalized (TObject *d, const TObject *s) {
@@ -158,8 +158,8 @@ static Proto *getluaproto (StkId f) {
158} 158}
159 159
160 160
161LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) { 161LUA_API const l_char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) {
162 const char *name; 162 const l_char *name;
163 StkId f; 163 StkId f;
164 Proto *fp; 164 Proto *fp;
165 LUA_LOCK(L); 165 LUA_LOCK(L);
@@ -176,8 +176,8 @@ LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) {
176} 176}
177 177
178 178
179LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) { 179LUA_API const l_char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) {
180 const char *name; 180 const l_char *name;
181 StkId f; 181 StkId f;
182 Proto *fp; 182 Proto *fp;
183 LUA_LOCK(L); 183 LUA_LOCK(L);
@@ -187,7 +187,7 @@ LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) {
187 L->top--; /* pop new value */ 187 L->top--; /* pop new value */
188 if (fp) { /* `f' is a Lua function? */ 188 if (fp) { /* `f' is a Lua function? */
189 name = luaF_getlocalname(fp, n, currentpc(f)); 189 name = luaF_getlocalname(fp, n, currentpc(f));
190 if (!name || name[0] == '(') /* `(' starts private locals */ 190 if (!name || name[0] == l_c('(')) /* `(' starts private locals */
191 name = NULL; 191 name = NULL;
192 else 192 else
193 setobj((f+1)+(n-1), L->top); 193 setobj((f+1)+(n-1), L->top);
@@ -200,7 +200,7 @@ LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) {
200static void infoLproto (lua_Debug *ar, Proto *f) { 200static void infoLproto (lua_Debug *ar, Proto *f) {
201 ar->source = getstr(f->source); 201 ar->source = getstr(f->source);
202 ar->linedefined = f->lineDefined; 202 ar->linedefined = f->lineDefined;
203 ar->what = "Lua"; 203 ar->what = l_s("Lua");
204} 204}
205 205
206 206
@@ -214,22 +214,22 @@ static void funcinfo (lua_State *L, lua_Debug *ar, StkId func) {
214 cl = infovalue(func)->func; 214 cl = infovalue(func)->func;
215 break; 215 break;
216 default: 216 default:
217 luaD_error(L, "value for `lua_getinfo' is not a function"); 217 luaD_error(L, l_s("value for `lua_getinfo' is not a function"));
218 } 218 }
219 if (cl->isC) { 219 if (cl->isC) {
220 ar->source = "=C"; 220 ar->source = l_s("=C");
221 ar->linedefined = -1; 221 ar->linedefined = -1;
222 ar->what = "C"; 222 ar->what = l_s("C");
223 } 223 }
224 else 224 else
225 infoLproto(ar, cl->f.l); 225 infoLproto(ar, cl->f.l);
226 luaO_chunkid(ar->short_src, ar->source, sizeof(ar->short_src)); 226 luaO_chunkid(ar->short_src, ar->source, sizeof(ar->short_src));
227 if (ar->linedefined == 0) 227 if (ar->linedefined == 0)
228 ar->what = "main"; 228 ar->what = l_s("main");
229} 229}
230 230
231 231
232static const char *travtagmethods (global_State *G, const TObject *o) { 232static const l_char *travtagmethods (global_State *G, const TObject *o) {
233 if (ttype(o) == LUA_TFUNCTION) { 233 if (ttype(o) == LUA_TFUNCTION) {
234 int e; 234 int e;
235 for (e=0; e<TM_N; e++) { 235 for (e=0; e<TM_N; e++) {
@@ -243,7 +243,7 @@ static const char *travtagmethods (global_State *G, const TObject *o) {
243} 243}
244 244
245 245
246static const char *travglobals (lua_State *L, const TObject *o) { 246static const l_char *travglobals (lua_State *L, const TObject *o) {
247 Hash *g = L->gt; 247 Hash *g = L->gt;
248 int i; 248 int i;
249 for (i=0; i<g->size; i++) { 249 for (i=0; i<g->size; i++) {
@@ -260,20 +260,20 @@ static void getname (lua_State *L, StkId f, lua_Debug *ar) {
260 setnormalized(&o, f); 260 setnormalized(&o, f);
261 /* try to find a name for given function */ 261 /* try to find a name for given function */
262 if ((ar->name = travglobals(L, &o)) != NULL) 262 if ((ar->name = travglobals(L, &o)) != NULL)
263 ar->namewhat = "global"; 263 ar->namewhat = l_s("global");
264 /* not found: try tag methods */ 264 /* not found: try tag methods */
265 else if ((ar->name = travtagmethods(G(L), &o)) != NULL) 265 else if ((ar->name = travtagmethods(G(L), &o)) != NULL)
266 ar->namewhat = "tag-method"; 266 ar->namewhat = l_s("tag-method");
267 else ar->namewhat = ""; /* not found at all */ 267 else ar->namewhat = l_s(""); /* not found at all */
268} 268}
269 269
270 270
271LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { 271LUA_API int lua_getinfo (lua_State *L, const l_char *what, lua_Debug *ar) {
272 StkId func; 272 StkId func;
273 int isactive; 273 int isactive;
274 int status = 1; 274 int status = 1;
275 LUA_LOCK(L); 275 LUA_LOCK(L);
276 isactive = (*what != '>'); 276 isactive = (*what != l_c('>'));
277 if (isactive) 277 if (isactive)
278 func = ar->_func; 278 func = ar->_func;
279 else { 279 else {
@@ -282,25 +282,25 @@ LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) {
282 } 282 }
283 for (; *what; what++) { 283 for (; *what; what++) {
284 switch (*what) { 284 switch (*what) {
285 case 'S': { 285 case l_c('S'): {
286 funcinfo(L, ar, func); 286 funcinfo(L, ar, func);
287 break; 287 break;
288 } 288 }
289 case 'l': { 289 case l_c('l'): {
290 ar->currentline = currentline(func); 290 ar->currentline = currentline(func);
291 break; 291 break;
292 } 292 }
293 case 'u': { 293 case l_c('u'): {
294 ar->nups = nups(func); 294 ar->nups = nups(func);
295 break; 295 break;
296 } 296 }
297 case 'n': { 297 case l_c('n'): {
298 ar->namewhat = (isactive) ? getfuncname(L, func, &ar->name) : NULL; 298 ar->namewhat = (isactive) ? getfuncname(L, func, &ar->name) : NULL;
299 if (ar->namewhat == NULL) 299 if (ar->namewhat == NULL)
300 getname(L, func, ar); 300 getname(L, func, ar);
301 break; 301 break;
302 } 302 }
303 case 'f': { 303 case l_c('f'): {
304 setnormalized(L->top, func); 304 setnormalized(L->top, func);
305 incr_top; /* push function */ 305 incr_top; /* push function */
306 break; 306 break;
@@ -543,7 +543,7 @@ int luaG_checkcode (lua_State *L, const Proto *pt) {
543} 543}
544 544
545 545
546static const char *getobjname (lua_State *L, StkId obj, const char **name) { 546static const l_char *getobjname (lua_State *L, StkId obj, const l_char **name) {
547 StkId func = aux_stackedfunction(L, 0, obj); 547 StkId func = aux_stackedfunction(L, 0, obj);
548 if (!isLmark(func)) 548 if (!isLmark(func))
549 return NULL; /* not an active Lua function */ 549 return NULL; /* not an active Lua function */
@@ -556,17 +556,17 @@ static const char *getobjname (lua_State *L, StkId obj, const char **name) {
556 switch (GET_OPCODE(i)) { 556 switch (GET_OPCODE(i)) {
557 case OP_GETGLOBAL: { 557 case OP_GETGLOBAL: {
558 *name = getstr(p->kstr[GETARG_U(i)]); 558 *name = getstr(p->kstr[GETARG_U(i)]);
559 return "global"; 559 return l_s("global");
560 } 560 }
561 case OP_GETLOCAL: { 561 case OP_GETLOCAL: {
562 *name = luaF_getlocalname(p, GETARG_U(i)+1, pc); 562 *name = luaF_getlocalname(p, GETARG_U(i)+1, pc);
563 lua_assert(*name); 563 lua_assert(*name);
564 return "local"; 564 return l_s("local");
565 } 565 }
566 case OP_PUSHSELF: 566 case OP_PUSHSELF:
567 case OP_GETDOTTED: { 567 case OP_GETDOTTED: {
568 *name = getstr(p->kstr[GETARG_U(i)]); 568 *name = getstr(p->kstr[GETARG_U(i)]);
569 return "field"; 569 return l_s("field");
570 } 570 }
571 default: 571 default:
572 return NULL; /* no useful name found */ 572 return NULL; /* no useful name found */
@@ -575,7 +575,7 @@ static const char *getobjname (lua_State *L, StkId obj, const char **name) {
575} 575}
576 576
577 577
578static const char *getfuncname (lua_State *L, StkId f, const char **name) { 578static const l_char *getfuncname (lua_State *L, StkId f, const l_char **name) {
579 StkId func = aux_stackedfunction(L, 0, f); /* calling function */ 579 StkId func = aux_stackedfunction(L, 0, f); /* calling function */
580 if (!isLmark(func)) 580 if (!isLmark(func))
581 return NULL; /* not an active Lua function */ 581 return NULL; /* not an active Lua function */
@@ -595,19 +595,19 @@ static const char *getfuncname (lua_State *L, StkId f, const char **name) {
595} 595}
596 596
597 597
598void luaG_typeerror (lua_State *L, StkId o, const char *op) { 598void luaG_typeerror (lua_State *L, StkId o, const l_char *op) {
599 const char *name; 599 const l_char *name;
600 const char *kind = getobjname(L, o, &name); 600 const l_char *kind = getobjname(L, o, &name);
601 const char *t = luaT_typename(G(L), o); 601 const l_char *t = luaT_typename(G(L), o);
602 if (kind) 602 if (kind)
603 luaO_verror(L, "attempt to %.30s %.20s `%.40s' (a %.10s value)", 603 luaO_verror(L, l_s("attempt to %.30s %.20s `%.40s' (a %.10s value)"),
604 op, kind, name, t); 604 op, kind, name, t);
605 else 605 else
606 luaO_verror(L, "attempt to %.30s a %.10s value", op, t); 606 luaO_verror(L, l_s("attempt to %.30s a %.10s value"), op, t);
607} 607}
608 608
609 609
610void luaG_binerror (lua_State *L, StkId p1, int t, const char *op) { 610void luaG_binerror (lua_State *L, StkId p1, int t, const l_char *op) {
611 if (ttype(p1) == t) p1++; 611 if (ttype(p1) == t) p1++;
612 lua_assert(ttype(p1) != t); 612 lua_assert(ttype(p1) != t);
613 luaG_typeerror(L, p1, op); 613 luaG_typeerror(L, p1, op);
@@ -615,11 +615,11 @@ void luaG_binerror (lua_State *L, StkId p1, int t, const char *op) {
615 615
616 616
617void luaG_ordererror (lua_State *L, const TObject *p1, const TObject *p2) { 617void luaG_ordererror (lua_State *L, const TObject *p1, const TObject *p2) {
618 const char *t1 = luaT_typename(G(L), p1); 618 const l_char *t1 = luaT_typename(G(L), p1);
619 const char *t2 = luaT_typename(G(L), p2); 619 const l_char *t2 = luaT_typename(G(L), p2);
620 if (t1[2] == t2[2]) 620 if (t1[2] == t2[2])
621 luaO_verror(L, "attempt to compare two %.10s values", t1); 621 luaO_verror(L, l_s("attempt to compare two %.10s values"), t1);
622 else 622 else
623 luaO_verror(L, "attempt to compare %.10s with %.10s", t1, t2); 623 luaO_verror(L, l_s("attempt to compare %.10s with %.10s"), t1, t2);
624} 624}
625 625