Skip to content

Commit

Permalink
Change ternary operator syntax
Browse files Browse the repository at this point in the history
  • Loading branch information
appcypher committed Oct 1, 2018
1 parent 1358a26 commit c6effa4
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 22 deletions.
8 changes: 4 additions & 4 deletions src/compiler/syntax/parser.js
Expand Up @@ -1740,22 +1740,22 @@ const ternaryOperator = (parser) => {
parse(
'(', opt(_), simpleExpression, opt(_), ')',
alt(parse(noSpace, '?', noSpace), parse(_, '?', _)), alt(prefixAtom, atom),
alt(parse(noSpace, '||', noSpace), parse(_, '||', _)), primitiveExpression,
alt(parse(noSpace, ':', noSpace), parse(_, ':', _)), primitiveExpression,
),
parse(
'(', nextCodeLine, indent, simpleExpression, nextCodeLine, dedent, ')',
alt(parse(noSpace, '?', noSpace), parse(_, '?', _)), alt(prefixAtom, atom),
alt(parse(noSpace, '||', noSpace), parse(_, '||', _)), primitiveExpression,
alt(parse(noSpace, ':', noSpace), parse(_, ':', _)), primitiveExpression,
),
parse(
'(', opt(_), simpleExpression, opt(_), ')',
alt(parse(noSpace, '?', noSpace), parse(_, '?', _)), primitiveExpression,
alt(parse(noSpace, '||', noSpace), parse(_, '||', _)), primitiveExpression,
alt(parse(noSpace, ':', noSpace), parse(_, ':', _)), primitiveExpression,
),
parse(
'(', nextCodeLine, indent, simpleExpression, nextCodeLine, dedent, ')',
alt(parse(noSpace, '?', noSpace), parse(_, '?', _)), primitiveExpression,
alt(parse(noSpace, '||', noSpace), parse(_, '||', _)), primitiveExpression,
alt(parse(noSpace, ':', noSpace), parse(_, ':', _)), primitiveExpression,
),
)(parser);

Expand Down
26 changes: 13 additions & 13 deletions src/compiler/syntax/parser_test_2.js
Expand Up @@ -4508,11 +4508,11 @@ test(
);

print('============== TERNARYOPERATOR ==============');
lexer = new Lexer('(5_000)? 0b10.001 || 0x7_EFF8');
lexer = new Lexer('(5_000)? 0b10.001 : 0x7_EFF8');
parser = new Parser(lexer.lex().tokens);
result = ternaryOperator(parser);
test(
String.raw`(5_000)? 0b10.001 || 0x7_EFF8--------->FAIL`,
String.raw`(5_000)? 0b10.001 : 0x7_EFF8--------->FAIL`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -4537,11 +4537,11 @@ test(
},
);

lexer = new Lexer('(5_000) ? 0b10.001 ||0x7_EFF8');
lexer = new Lexer('(5_000) ? 0b10.001 :0x7_EFF8');
parser = new Parser(lexer.lex().tokens);
result = ternaryOperator(parser);
test(
String.raw`(5_000)? 0b10.001 ||0x7_EFF8--------->FAIL`,
String.raw`(5_000)? 0b10.001 ;0x7_EFF8--------->FAIL`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -4566,11 +4566,11 @@ test(
},
);

lexer = new Lexer('(5_000) ? 0b10.001 || 0x7_EFF8');
lexer = new Lexer('(5_000) ? 0b10.001 : 0x7_EFF8');
parser = new Parser(lexer.lex().tokens);
result = ternaryOperator(parser);
test(
String.raw`(5_000) ? 0b10.001 || 0x7_EFF8`,
String.raw`(5_000) ? 0b10.001 : 0x7_EFF8`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -4581,7 +4581,7 @@ test(
{
parser: {
tokenPosition: 6,
column: 30,
column: 29,
},
result: {
success: true,
Expand All @@ -4604,11 +4604,11 @@ test(
},
);

lexer = new Lexer('( \n 5_000\n) ? 0b10.001 || 0x7_EFF8');
lexer = new Lexer('( \n 5_000\n) ? 0b10.001 : 0x7_EFF8');
parser = new Parser(lexer.lex().tokens);
result = ternaryOperator(parser);
test(
String.raw`( \n 5_000\n) ? 0b10.001 || 0x7_EFF8`,
String.raw`( \n 5_000\n) ? 0b10.001 : 0x7_EFF8`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -4619,7 +4619,7 @@ test(
{
parser: {
tokenPosition: 8,
column: 38,
column: 37,
},
result: {
success: true,
Expand All @@ -4642,12 +4642,12 @@ test(
},
);

lexer = new Lexer('( \n 5_000\n) ? +0b10.001||0x7_EFF8');
lexer = new Lexer('( \n 5_000\n) ? +0b10.001:0x7_EFF8');
parser = new Parser(lexer.lex().tokens);
result = ternaryOperator(parser);
print(result);
test(
String.raw`( \n 5_000\n) ? +0b10.001||0x7_EFF8`,
String.raw`( \n 5_000\n) ? +0b10.001:0x7_EFF8`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -4658,7 +4658,7 @@ test(
{
parser: {
tokenPosition: 9,
column: 37,
column: 36,
},
result: {
success: true,
Expand Down
10 changes: 5 additions & 5 deletions src/compiler/syntax/parser_test_3.js
Expand Up @@ -1793,11 +1793,11 @@ test(
},
);

lexer = new Lexer('(2) ? 4 || 7');
lexer = new Lexer('(2) ? 4 : 7');
parser = new Parser(lexer.lex().tokens);
result = simpleExpression(parser);
test(
String.raw`(2) ? 4 || 7`,
String.raw`(2) ? 4 : 7`,
{
parser: {
tokenPosition: parser.tokenPosition,
Expand All @@ -1808,7 +1808,7 @@ test(
{
parser: {
tokenPosition: 6,
column: 12,
column: 11,
},
result: {
success: true,
Expand Down Expand Up @@ -1877,7 +1877,7 @@ test(
},
);

lexer = new Lexer('1 + 2, \n(2) ? 4 || 5_000');
lexer = new Lexer('1 + 2, \n(2) ? 4 : 5_000');
parser = new Parser(lexer.lex().tokens);
result = tupleExpression(parser);
test(
Expand All @@ -1892,7 +1892,7 @@ test(
{
parser: {
tokenPosition: 11,
column: 24,
column: 23,
},
result: {
success: true,
Expand Down

0 comments on commit c6effa4

Please sign in to comment.