From 79fb5e6be113678d4ef0349d2e584f219e567426 Mon Sep 17 00:00:00 2001 From: Nicholas Noll Date: Thu, 21 Oct 2021 12:02:14 -0700 Subject: feat(rc): string join operator --- sys/cmd/rc/lex.c | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) (limited to 'sys/cmd/rc/lex.c') diff --git a/sys/cmd/rc/lex.c b/sys/cmd/rc/lex.c index 8ddf270..5de238e 100644 --- a/sys/cmd/rc/lex.c +++ b/sys/cmd/rc/lex.c @@ -217,6 +217,19 @@ yylex(void) put3('E','O','F'); return EOF; + case '$': + lexer.haddollar = 1; + if(nextis('#')){ + put2('$','#'); + return Tcount; + } + if(nextis('^')){ + put2('$','^'); + return Tjoin; + } + put1('$'); + return '$'; + case '@': lexer.haddollar = 0; put1('@'); @@ -324,19 +337,6 @@ yylex(void) return node->type; - case '$': - lexer.haddollar = 1; - if(nextis('#')){ - put2('$','#'); - return Tcount; - } - if(nextis('^')){ - put2('$','^'); - return Tflat; - } - put1('$'); - return '$'; - case '\'': lexer.hadword = 1; lexer.inquote = 1; -- cgit v1.2.1