Reuse respective opposite overload in std/string comparisions (#479)

This commit is contained in:
Max Graey
2019-02-21 01:30:05 +02:00
committed by Daniel Wirtz
parent 2c365ada5b
commit 0041572052
11 changed files with 52 additions and 280 deletions

View File

@ -162,17 +162,7 @@ export class String {
@operator(">=")
private static __gte(left: String, right: String): bool {
if (left === right) return true;
if (left === null || right === null) return false;
var leftLength = left.length;
var rightLength = right.length;
if (!leftLength) return !rightLength;
if (!rightLength) return true;
var length = <usize>min<i32>(leftLength, rightLength);
return compareUnsafe(left, 0, right, 0, length) >= 0;
return !this.__lt(left, right);
}
@operator("<")
@ -191,17 +181,7 @@ export class String {
@operator("<=")
private static __lte(left: String, right: String): bool {
if (left === right) return true;
if (left === null || right === null) return false;
var leftLength = left.length;
var rightLength = right.length;
if (!rightLength) return !leftLength;
if (!leftLength) return true;
var length = <usize>min<i32>(leftLength, rightLength);
return compareUnsafe(left, 0, right, 0, length) <= 0;
return !this.__gt(left, right);
}
@inline