EF waves N+35–N+43: lambda captures in 30 files (aph..zz), compileJava green
This commit is contained in:
parent
51b4c3cef2
commit
036d94952c
76 changed files with 2723 additions and 181 deletions
96
tools/waves_n39.py
Normal file
96
tools/waves_n39.py
Normal file
|
|
@ -0,0 +1,96 @@
|
|||
"""Волна N+39: vfbuild60 — 18 EF в tr.java (submitDroplets + submitSplashes).
|
||||
Запуск: python3 tools/waves_n39.py"""
|
||||
|
||||
import os, sys
|
||||
|
||||
ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
|
||||
p = os.path.join(ROOT, "src/main/java/defpackage/tr.java")
|
||||
L = open(p, encoding="utf-8", errors="replace").read().splitlines()
|
||||
ok = True
|
||||
|
||||
|
||||
def edit(ln, old, new):
|
||||
global ok
|
||||
i = ln - 1
|
||||
if i < len(L) and old in L[i]:
|
||||
L[i] = L[i].replace(old, new, 1)
|
||||
elif i < len(L) and new in L[i]:
|
||||
pass
|
||||
else:
|
||||
ok = False
|
||||
print(f"MISS {ln}: {old!r} got {(L[i] if i < len(L) else '<oob>').strip()!r}")
|
||||
|
||||
|
||||
def insert_before(ln, anchor_prev, anchor_next, decls):
|
||||
global ok
|
||||
ip = ln - 1
|
||||
prev_ok = anchor_prev in L[ip - 1]
|
||||
next_ok = anchor_next in L[ip]
|
||||
done = decls[0].strip() in "\n".join(L[max(0, ip - 8) : ip + 12])
|
||||
if prev_ok and next_ok and not done:
|
||||
line = L[ip]
|
||||
indent = line[: len(line) - len(line.lstrip())]
|
||||
L[ip:ip] = [indent + d for d in decls]
|
||||
elif done:
|
||||
pass
|
||||
else:
|
||||
ok = False
|
||||
print(
|
||||
f"INSERT-MISS {ln}: prev={L[ip - 1].strip()[:60]!r} next={L[ip].strip()[:60]!r}"
|
||||
)
|
||||
|
||||
|
||||
# edits first (descending): region2 (submitSplashes) then region1 (submitDroplets)
|
||||
edit(1601, "var11x < var10", "var11x < var10f")
|
||||
edit(1596, "var8 * (1.0F", "var8f * (1.0F")
|
||||
edit(1582, "var6 - this.splashStart", "var6f - this.splashStart")
|
||||
edit(1581, "(var11 + var11x)", "(var11f + var11x)")
|
||||
edit(
|
||||
1574,
|
||||
"var14x * var9.x() + var16x * var9.y() + var18 * var9.z()",
|
||||
"var14x * var9f.x() + var16x * var9f.y() + var18 * var9f.z()",
|
||||
)
|
||||
edit(
|
||||
1452,
|
||||
"var18x * var12 + var19x * var13 + var20x * var14",
|
||||
"var18x * var12f + var19x * var13f + var20x * var14f",
|
||||
)
|
||||
edit(1400, "-var6 / var13x", "-var6f / var13x")
|
||||
edit(1398, "var6 * var6", "var6f * var6f")
|
||||
edit(1387, "var17x < var15", "var17x < var15f")
|
||||
edit(1369, "var29 = var10 * var22x", "var29 = var10f * var22x")
|
||||
edit(1368, "var28 = var8 * this.dropSpeed", "var28 = var8f * this.dropSpeed")
|
||||
edit(1367, "Math.max(var9,", "Math.max(var9f,")
|
||||
|
||||
# inserts (descending)
|
||||
insert_before(
|
||||
1524,
|
||||
"var11 = this.splashHead;",
|
||||
"var1.submitCustomGeometry(var2, arj.positionColorDepthNoWrite(), (var9x, var10x) -> {",
|
||||
[
|
||||
"final long var6f = var6;",
|
||||
"final float var8f = var8;",
|
||||
"final Vector3fc var9f = var9;",
|
||||
"final int var10f = var10;",
|
||||
"final int var11f = var11;",
|
||||
],
|
||||
)
|
||||
insert_before(
|
||||
1329,
|
||||
"var15 = this.dropCount;",
|
||||
"var1.submitCustomGeometry(var2, arj.positionColorDepthNoWrite(), (var11x, var12x) -> {",
|
||||
[
|
||||
"final float var6f = var6;",
|
||||
"final float var8f = var8;",
|
||||
"final float var9f = var9;",
|
||||
"final float var10f = var10;",
|
||||
"final float var12f = var12;",
|
||||
"final float var13f = var13;",
|
||||
"final float var14f = var14;",
|
||||
"final int var15f = var15;",
|
||||
],
|
||||
)
|
||||
|
||||
open(p, "w", encoding="utf-8").write("\n".join(L) + "\n")
|
||||
print("OK" if ok else "PROBLEMS")
|
||||
sys.exit(0 if ok else 1)
|
||||
Loading…
Add table
Add a link
Reference in a new issue