Skip to content

Commit 4257fe4

Browse files
committed
Short-circuit comparisons that have already failed
1 parent 54d350f commit 4257fe4

File tree

1 file changed

+2
-3
lines changed

1 file changed

+2
-3
lines changed

src/compiler/core.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -978,10 +978,10 @@ export function detectSortCaseSensitivity<T>(array: readonly T[], useEslintOrder
978978
for (let i = 1, len = array.length; i < len; i++) {
979979
const prevElement = array[i - 1];
980980
const element = array[i];
981-
if (caseSensitiveComparer(prevElement, element) === Comparison.GreaterThan) {
981+
if (kind & SortKind.CaseSensitive && caseSensitiveComparer(prevElement, element) === Comparison.GreaterThan) {
982982
kind &= ~SortKind.CaseSensitive;
983983
}
984-
if (caseInsensitiveComparer(prevElement, element) === Comparison.GreaterThan) {
984+
if (kind & SortKind.CaseInsensitive && caseInsensitiveComparer(prevElement, element) === Comparison.GreaterThan) {
985985
kind &= ~SortKind.CaseInsensitive;
986986
}
987987
if (kind === SortKind.None) {
@@ -991,7 +991,6 @@ export function detectSortCaseSensitivity<T>(array: readonly T[], useEslintOrder
991991
return kind;
992992
}
993993

994-
995994
/** @internal */
996995
export function arrayIsEqualTo<T>(array1: readonly T[] | undefined, array2: readonly T[] | undefined, equalityComparer: (a: T, b: T, index: number) => boolean = equateValues): boolean {
997996
if (!array1 || !array2) {

0 commit comments

Comments
 (0)