瀏覽代碼

Perf: make `fileEqual` faster

SukkaW 1 年之前
父節點
當前提交
ffa4e03d08
共有 1 個文件被更改,包括 7 次插入7 次删除
  1. 7 7
      Build/lib/rules/base.ts

+ 7 - 7
Build/lib/rules/base.ts

@@ -401,6 +401,10 @@ export async function fileEqual(linesA: string[], source: AsyncIterable<string>
     const firstCharA = lineA.charCodeAt(0);
     const firstCharB = lineB.charCodeAt(0);
 
+    if (firstCharA !== firstCharB) {
+      return false;
+    }
+
     if (firstCharA === 35 /* # */ && firstCharB === 35 /* # */) {
       continue;
     }
@@ -410,13 +414,9 @@ export async function fileEqual(linesA: string[], source: AsyncIterable<string>
     }
 
     if (
-      firstCharA === 47 /* / */
-      && firstCharB === 47 /* / */
-
-      && lineA[1] === '/'
-      && lineB[1] === '/'
-      && lineA[3] === '#'
-      && lineB[3] === '#'
+      firstCharA === 47 /* / */ && firstCharB === 47 /* / */
+      && lineA[1] === '/' && lineB[1] === '/'
+      && lineA[3] === '#' && lineB[3] === '#'
     ) {
       continue;
     }