| @@ 513-528 (lines=16) @@ | ||
| 510 | * |
|
| 511 | * @return IType |
|
| 512 | */ |
|
| 513 | public static function verifyAndPromoteArithmeticOpArguments( |
|
| 514 | $expressionToken, |
|
| 515 | $leftArgument, |
|
| 516 | $rightArgument |
|
| 517 | ) { |
|
| 518 | $function |
|
| 519 | = self::findFunctionWithPromotion( |
|
| 520 | self::arithmeticOperationFunctions(), |
|
| 521 | [$leftArgument, $rightArgument] |
|
| 522 | ); |
|
| 523 | if ($function == null) { |
|
| 524 | self::incompatibleError( |
|
| 525 | $expressionToken, |
|
| 526 | [$leftArgument, $rightArgument] |
|
| 527 | ); |
|
| 528 | } |
|
| 529 | ||
| 530 | return $function->returnType; |
|
| 531 | } |
|
| @@ 542-555 (lines=14) @@ | ||
| 539 | * |
|
| 540 | * @throws ODataException |
|
| 541 | */ |
|
| 542 | public static function verifyLogicalOpArguments( |
|
| 543 | $expressionToken, |
|
| 544 | $leftArgument, |
|
| 545 | $rightArgument |
|
| 546 | ) { |
|
| 547 | $function = self::findFunctionWithPromotion( |
|
| 548 | self::logicalOperationFunctions(), |
|
| 549 | [$leftArgument, $rightArgument], |
|
| 550 | false |
|
| 551 | ); |
|
| 552 | if ($function == null) { |
|
| 553 | self::incompatibleError( |
|
| 554 | $expressionToken, |
|
| 555 | [$leftArgument, $rightArgument] |
|
| 556 | ); |
|
| 557 | } |
|
| 558 | } |
|