aboutsummaryrefslogtreecommitdiff
path: root/lparser.c
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-02-22 15:59:59 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2001-02-22 15:59:59 -0300
commit5f37134e64aec3a0414a41c11d6b055c667369d1 (patch)
tree29415835aca3bc8bfe31c9e4c03d894ac6bcef09 /lparser.c
parent52ee91dd73199e068d31d3ac138d933ddd4fb9b1 (diff)
downloadlua-5f37134e64aec3a0414a41c11d6b055c667369d1.tar.gz
lua-5f37134e64aec3a0414a41c11d6b055c667369d1.tar.bz2
lua-5f37134e64aec3a0414a41c11d6b055c667369d1.zip
avoid '...' and "..." inside comments
Diffstat (limited to 'lparser.c')
-rw-r--r--lparser.c40
1 files changed, 20 insertions, 20 deletions
diff --git a/lparser.c b/lparser.c
index aea4b621..17dd2983 100644
--- a/lparser.c
+++ b/lparser.c
@@ -1,5 +1,5 @@
1/* 1/*
2** $Id: lparser.c,v 1.135 2001/02/20 18:15:33 roberto Exp roberto $ 2** $Id: lparser.c,v 1.136 2001/02/20 18:28:11 roberto Exp roberto $
3** LL(1) Parser and code generator for Lua 3** LL(1) Parser and code generator for Lua
4** See Copyright Notice in lua.h 4** See Copyright Notice in lua.h
5*/ 5*/
@@ -26,7 +26,7 @@
26** Constructors descriptor: 26** Constructors descriptor:
27** `n' indicates number of elements, and `k' signals whether 27** `n' indicates number of elements, and `k' signals whether
28** it is a list constructor (k = 0) or a record constructor (k = 1) 28** it is a list constructor (k = 0) or a record constructor (k = 1)
29** or empty (k = ';' or '}') 29** or empty (k = `;' or `}')
30*/ 30*/
31typedef struct Constdesc { 31typedef struct Constdesc {
32 int n; 32 int n;
@@ -381,7 +381,7 @@ Proto *luaY_parser (lua_State *L, ZIO *z) {
381 381
382 382
383static int explist1 (LexState *ls) { 383static int explist1 (LexState *ls) {
384 /* explist1 -> expr { ',' expr } */ 384 /* explist1 -> expr { `,' expr } */
385 int n = 1; /* at least one expression */ 385 int n = 1; /* at least one expression */
386 expdesc v; 386 expdesc v;
387 expr(ls, &v); 387 expr(ls, &v);
@@ -400,7 +400,7 @@ static void funcargs (LexState *ls, int slf) {
400 FuncState *fs = ls->fs; 400 FuncState *fs = ls->fs;
401 int slevel = fs->stacklevel - slf - 1; /* where is func in the stack */ 401 int slevel = fs->stacklevel - slf - 1; /* where is func in the stack */
402 switch (ls->t.token) { 402 switch (ls->t.token) {
403 case '(': { /* funcargs -> '(' [ explist1 ] ')' */ 403 case '(': { /* funcargs -> `(' [ explist1 ] `)' */
404 int line = ls->linenumber; 404 int line = ls->linenumber;
405 int nargs = 0; 405 int nargs = 0;
406 next(ls); 406 next(ls);
@@ -442,7 +442,7 @@ static void funcargs (LexState *ls, int slf) {
442 442
443 443
444static void recfield (LexState *ls) { 444static void recfield (LexState *ls) {
445 /* recfield -> (NAME | '['exp1']') = exp1 */ 445 /* recfield -> (NAME | `['exp1`]') = exp1 */
446 switch (ls->t.token) { 446 switch (ls->t.token) {
447 case TK_NAME: { 447 case TK_NAME: {
448 luaK_kstr(ls, checkname(ls)); 448 luaK_kstr(ls, checkname(ls));
@@ -462,7 +462,7 @@ static void recfield (LexState *ls) {
462 462
463 463
464static int recfields (LexState *ls) { 464static int recfields (LexState *ls) {
465 /* recfields -> recfield { ',' recfield } [','] */ 465 /* recfields -> recfield { `,' recfield } [`,'] */
466 FuncState *fs = ls->fs; 466 FuncState *fs = ls->fs;
467 int n = 1; /* at least one element */ 467 int n = 1; /* at least one element */
468 recfield(ls); 468 recfield(ls);
@@ -481,7 +481,7 @@ static int recfields (LexState *ls) {
481 481
482 482
483static int listfields (LexState *ls) { 483static int listfields (LexState *ls) {
484 /* listfields -> exp1 { ',' exp1 } [','] */ 484 /* listfields -> exp1 { `,' exp1 } [`,'] */
485 FuncState *fs = ls->fs; 485 FuncState *fs = ls->fs;
486 int n = 1; /* at least one element */ 486 int n = 1; /* at least one element */
487 exp1(ls); 487 exp1(ls);
@@ -531,7 +531,7 @@ static void constructor_part (LexState *ls, Constdesc *cd) {
531 531
532 532
533static void constructor (LexState *ls) { 533static void constructor (LexState *ls) {
534 /* constructor -> '{' constructor_part [';' constructor_part] '}' */ 534 /* constructor -> `{' constructor_part [`;' constructor_part] `}' */
535 FuncState *fs = ls->fs; 535 FuncState *fs = ls->fs;
536 int line = ls->linenumber; 536 int line = ls->linenumber;
537 int pc = luaK_code1(fs, OP_CREATETABLE, 0); 537 int pc = luaK_code1(fs, OP_CREATETABLE, 0);
@@ -617,18 +617,18 @@ static void primaryexp (LexState *ls, expdesc *v) {
617 617
618static void simpleexp (LexState *ls, expdesc *v) { 618static void simpleexp (LexState *ls, expdesc *v) {
619 /* simpleexp -> 619 /* simpleexp ->
620 primaryexp { '.' NAME | '[' exp ']' | ':' NAME funcargs | funcargs } */ 620 primaryexp { `.' NAME | `[' exp `]' | `:' NAME funcargs | funcargs } */
621 primaryexp(ls, v); 621 primaryexp(ls, v);
622 for (;;) { 622 for (;;) {
623 switch (ls->t.token) { 623 switch (ls->t.token) {
624 case '.': { /* '.' NAME */ 624 case '.': { /* `.' NAME */
625 next(ls); 625 next(ls);
626 luaK_tostack(ls, v, 1); /* `v' must be on stack */ 626 luaK_tostack(ls, v, 1); /* `v' must be on stack */
627 luaK_kstr(ls, checkname(ls)); 627 luaK_kstr(ls, checkname(ls));
628 v->k = VINDEXED; 628 v->k = VINDEXED;
629 break; 629 break;
630 } 630 }
631 case '[': { /* '[' exp1 ']' */ 631 case '[': { /* `[' exp1 `]' */
632 next(ls); 632 next(ls);
633 luaK_tostack(ls, v, 1); /* `v' must be on stack */ 633 luaK_tostack(ls, v, 1); /* `v' must be on stack */
634 v->k = VINDEXED; 634 v->k = VINDEXED;
@@ -636,7 +636,7 @@ static void simpleexp (LexState *ls, expdesc *v) {
636 check(ls, ']'); 636 check(ls, ']');
637 break; 637 break;
638 } 638 }
639 case ':': { /* ':' NAME funcargs */ 639 case ':': { /* `:' NAME funcargs */
640 next(ls); 640 next(ls);
641 luaK_tostack(ls, v, 1); /* `v' must be on stack */ 641 luaK_tostack(ls, v, 1); /* `v' must be on stack */
642 luaK_code1(ls->fs, OP_PUSHSELF, checkname(ls)); 642 luaK_code1(ls->fs, OP_PUSHSELF, checkname(ls));
@@ -775,14 +775,14 @@ static void block (LexState *ls) {
775static int assignment (LexState *ls, expdesc *v, int nvars) { 775static int assignment (LexState *ls, expdesc *v, int nvars) {
776 int left = 0; /* number of values left in the stack after assignment */ 776 int left = 0; /* number of values left in the stack after assignment */
777 luaX_checklimit(ls, nvars, MAXVARSLH, "variables in a multiple assignment"); 777 luaX_checklimit(ls, nvars, MAXVARSLH, "variables in a multiple assignment");
778 if (ls->t.token == ',') { /* assignment -> ',' simpleexp assignment */ 778 if (ls->t.token == ',') { /* assignment -> `,' simpleexp assignment */
779 expdesc nv; 779 expdesc nv;
780 next(ls); 780 next(ls);
781 simpleexp(ls, &nv); 781 simpleexp(ls, &nv);
782 check_condition(ls, (nv.k != VEXP), "syntax error"); 782 check_condition(ls, (nv.k != VEXP), "syntax error");
783 left = assignment(ls, &nv, nvars+1); 783 left = assignment(ls, &nv, nvars+1);
784 } 784 }
785 else { /* assignment -> '=' explist1 */ 785 else { /* assignment -> `=' explist1 */
786 int nexps; 786 int nexps;
787 check(ls, '='); 787 check(ls, '=');
788 nexps = explist1(ls); 788 nexps = explist1(ls);
@@ -943,11 +943,11 @@ static void ifstat (LexState *ls, int line) {
943 943
944 944
945static void localstat (LexState *ls) { 945static void localstat (LexState *ls) {
946 /* stat -> LOCAL NAME {',' NAME} ['=' explist1] */ 946 /* stat -> LOCAL NAME {`,' NAME} [`=' explist1] */
947 int nvars = 0; 947 int nvars = 0;
948 int nexps; 948 int nexps;
949 do { 949 do {
950 next(ls); /* skip LOCAL or ',' */ 950 next(ls); /* skip LOCAL or `,' */
951 new_localvar(ls, str_checkname(ls), nvars++); 951 new_localvar(ls, str_checkname(ls), nvars++);
952 } while (ls->t.token == ','); 952 } while (ls->t.token == ',');
953 if (optional(ls, '=')) 953 if (optional(ls, '='))
@@ -960,7 +960,7 @@ static void localstat (LexState *ls) {
960 960
961 961
962static int funcname (LexState *ls, expdesc *v) { 962static int funcname (LexState *ls, expdesc *v) {
963 /* funcname -> NAME {'.' NAME} [':' NAME] */ 963 /* funcname -> NAME {`.' NAME} [`:' NAME] */
964 int needself = 0; 964 int needself = 0;
965 singlevar(ls, str_checkname(ls), v); 965 singlevar(ls, str_checkname(ls), v);
966 while (ls->t.token == '.') { 966 while (ls->t.token == '.') {
@@ -1083,7 +1083,7 @@ static int stat (LexState *ls) {
1083 1083
1084 1084
1085static void parlist (LexState *ls) { 1085static void parlist (LexState *ls) {
1086 /* parlist -> [ param { ',' param } ] */ 1086 /* parlist -> [ param { `,' param } ] */
1087 int nparams = 0; 1087 int nparams = 0;
1088 short dots = 0; 1088 short dots = 0;
1089 if (ls->t.token != ')') { /* is `parlist' not empty? */ 1089 if (ls->t.token != ')') { /* is `parlist' not empty? */
@@ -1100,7 +1100,7 @@ static void parlist (LexState *ls) {
1100 1100
1101 1101
1102static void body (LexState *ls, int needself, int line) { 1102static void body (LexState *ls, int needself, int line) {
1103 /* body -> '(' parlist ')' chunk END */ 1103 /* body -> `(' parlist `)' chunk END */
1104 FuncState new_fs; 1104 FuncState new_fs;
1105 open_func(ls, &new_fs); 1105 open_func(ls, &new_fs);
1106 new_fs.f->lineDefined = line; 1106 new_fs.f->lineDefined = line;
@@ -1122,7 +1122,7 @@ static void body (LexState *ls, int needself, int line) {
1122 1122
1123 1123
1124static void chunk (LexState *ls) { 1124static void chunk (LexState *ls) {
1125 /* chunk -> { stat [';'] } */ 1125 /* chunk -> { stat [`;'] } */
1126 int islast = 0; 1126 int islast = 0;
1127 while (!islast && !block_follow(ls->t.token)) { 1127 while (!islast && !block_follow(ls->t.token)) {
1128 islast = stat(ls); 1128 islast = stat(ls);