mirror of
https://github.com/gbdev/rgbds.git
synced 2025-11-20 10:12:06 +00:00
Implement === and !== string comparison operators (#1832)
This commit is contained in:
@@ -107,6 +107,7 @@
|
||||
|
||||
// String operators
|
||||
%token OP_CAT "++"
|
||||
%token OP_STREQU "===" OP_STRNE "!=="
|
||||
|
||||
// Comparison operators
|
||||
%token OP_LOGICEQU "==" OP_LOGICNE "!="
|
||||
@@ -1287,6 +1288,12 @@ relocexpr_no_str:
|
||||
| CHARACTER {
|
||||
$$.makeNumber(act_CharToNum($1));
|
||||
}
|
||||
| string OP_STREQU string {
|
||||
$$.makeNumber($1.compare($3) == 0);
|
||||
}
|
||||
| string OP_STRNE string {
|
||||
$$.makeNumber($1.compare($3) != 0);
|
||||
}
|
||||
| OP_LOGICNOT relocexpr %prec NEG {
|
||||
$$.makeUnaryOp(RPN_LOGNOT, std::move($2));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user