diff options
author | Obinna Ikeh <hikenike6@gmail.com> | 2022-06-13 23:10:12 +0100 |
---|---|---|
committer | Brian Gianforcaro <b.gianfo@gmail.com> | 2022-06-13 17:37:11 -0700 |
commit | 3d99e83a86b3399e48a7ab9ec7f18a020a4be153 (patch) | |
tree | 3460a5f7dac8fdb7a169b40df0151ae865a9b814 /Userland/Libraries | |
parent | 4e21835e7052b45f224302dbf6a1b8948f753911 (diff) | |
download | serenity-3d99e83a86b3399e48a7ab9ec7f18a020a4be153.zip |
LibJS: Update order of parameters in our is_less_than implementation
This change updates the parameter order of the is_less_than function
signature and calls to match accordingly with the spec
(https://tc39.es/ecma262/#sec-islessthan)
Diffstat (limited to 'Userland/Libraries')
-rw-r--r-- | Userland/Libraries/LibJS/Runtime/Array.cpp | 5 | ||||
-rw-r--r-- | Userland/Libraries/LibJS/Runtime/Value.cpp | 10 | ||||
-rw-r--r-- | Userland/Libraries/LibJS/Runtime/Value.h | 2 |
3 files changed, 8 insertions, 9 deletions
diff --git a/Userland/Libraries/LibJS/Runtime/Array.cpp b/Userland/Libraries/LibJS/Runtime/Array.cpp index 64c22fe3df..2adb9bf2e0 100644 --- a/Userland/Libraries/LibJS/Runtime/Array.cpp +++ b/Userland/Libraries/LibJS/Runtime/Array.cpp @@ -183,15 +183,14 @@ ThrowCompletionOr<double> compare_array_elements(GlobalObject& global_object, Va auto* y_string = js_string(vm, TRY(y.to_string(global_object))); // 7. Let xSmaller be ! IsLessThan(xString, yString, true). - // FIXME: Update order of parameters in our is_less_than() impl. - auto x_smaller = MUST(is_less_than(global_object, true, x_string, y_string)); + auto x_smaller = MUST(is_less_than(global_object, x_string, y_string, true)); // 8. If xSmaller is true, return -1𝔽. if (x_smaller == TriState::True) return -1; // 9. Let ySmaller be ! IsLessThan(yString, xString, true). - auto y_smaller = MUST(is_less_than(global_object, true, y_string, x_string)); + auto y_smaller = MUST(is_less_than(global_object, y_string, x_string, true)); // 10. If ySmaller is true, return 1𝔽. if (y_smaller == TriState::True) diff --git a/Userland/Libraries/LibJS/Runtime/Value.cpp b/Userland/Libraries/LibJS/Runtime/Value.cpp index 8d20e21300..66838574e5 100644 --- a/Userland/Libraries/LibJS/Runtime/Value.cpp +++ b/Userland/Libraries/LibJS/Runtime/Value.cpp @@ -875,7 +875,7 @@ ThrowCompletionOr<Value> greater_than(GlobalObject& global_object, Value lhs, Va if (lhs.type() == Value::Type::Int32 && rhs.type() == Value::Type::Int32) return lhs.as_i32() > rhs.as_i32(); - TriState relation = TRY(is_less_than(global_object, false, lhs, rhs)); + TriState relation = TRY(is_less_than(global_object, lhs, rhs, false)); if (relation == TriState::Unknown) return Value(false); return Value(relation == TriState::True); @@ -887,7 +887,7 @@ ThrowCompletionOr<Value> greater_than_equals(GlobalObject& global_object, Value if (lhs.type() == Value::Type::Int32 && rhs.type() == Value::Type::Int32) return lhs.as_i32() >= rhs.as_i32(); - TriState relation = TRY(is_less_than(global_object, true, lhs, rhs)); + TriState relation = TRY(is_less_than(global_object, lhs, rhs, true)); if (relation == TriState::Unknown || relation == TriState::True) return Value(false); return Value(true); @@ -899,7 +899,7 @@ ThrowCompletionOr<Value> less_than(GlobalObject& global_object, Value lhs, Value if (lhs.type() == Value::Type::Int32 && rhs.type() == Value::Type::Int32) return lhs.as_i32() < rhs.as_i32(); - TriState relation = TRY(is_less_than(global_object, true, lhs, rhs)); + TriState relation = TRY(is_less_than(global_object, lhs, rhs, true)); if (relation == TriState::Unknown) return Value(false); return Value(relation == TriState::True); @@ -911,7 +911,7 @@ ThrowCompletionOr<Value> less_than_equals(GlobalObject& global_object, Value lhs if (lhs.type() == Value::Type::Int32 && rhs.type() == Value::Type::Int32) return lhs.as_i32() <= rhs.as_i32(); - TriState relation = TRY(is_less_than(global_object, false, lhs, rhs)); + TriState relation = TRY(is_less_than(global_object, lhs, rhs, false)); if (relation == TriState::Unknown || relation == TriState::True) return Value(false); return Value(true); @@ -1523,7 +1523,7 @@ ThrowCompletionOr<bool> is_loosely_equal(GlobalObject& global_object, Value lhs, } // 7.2.13 IsLessThan ( x, y, LeftFirst ), https://tc39.es/ecma262/#sec-islessthan -ThrowCompletionOr<TriState> is_less_than(GlobalObject& global_object, bool left_first, Value lhs, Value rhs) +ThrowCompletionOr<TriState> is_less_than(GlobalObject& global_object, Value lhs, Value rhs, bool left_first) { Value x_primitive; Value y_primitive; diff --git a/Userland/Libraries/LibJS/Runtime/Value.h b/Userland/Libraries/LibJS/Runtime/Value.h index 553a760744..4eb3d39558 100644 --- a/Userland/Libraries/LibJS/Runtime/Value.h +++ b/Userland/Libraries/LibJS/Runtime/Value.h @@ -429,7 +429,7 @@ bool is_strictly_equal(Value lhs, Value rhs); bool same_value(Value lhs, Value rhs); bool same_value_zero(Value lhs, Value rhs); bool same_value_non_numeric(Value lhs, Value rhs); -ThrowCompletionOr<TriState> is_less_than(GlobalObject&, bool left_first, Value lhs, Value rhs); +ThrowCompletionOr<TriState> is_less_than(GlobalObject&, Value lhs, Value rhs, bool left_first); double to_integer_or_infinity(double); |