mirror of
https://github.com/open-goal/jak-project
synced 2026-05-29 08:43:08 -04:00
[decomp] Split condition and body of until after building expressions (#768)
* improve until decomp * fix tests
This commit is contained in:
@@ -454,11 +454,14 @@ TEST_F(FormRegressionTest, ExprBasicTypeP) {
|
||||
std::string type = "(function basic type symbol)";
|
||||
std::string expected =
|
||||
"(begin\n"
|
||||
" (let\n"
|
||||
" ((v1-0 (-> arg0 type)) (a0-1 object))\n"
|
||||
" (until\n"
|
||||
" (begin (set! v1-0 (-> v1-0 parent)) (= v1-0 a0-1))\n"
|
||||
" (if (= v1-0 arg1) (return #t))\n"
|
||||
" (let ((v1-0 (-> arg0 type))\n"
|
||||
" (a0-1 object)\n"
|
||||
" )\n"
|
||||
" (until (= v1-0 a0-1)\n"
|
||||
" (if (= v1-0 arg1)\n"
|
||||
" (return #t)\n"
|
||||
" )\n"
|
||||
" (set! v1-0 (-> v1-0 parent))\n"
|
||||
" )\n"
|
||||
" )\n"
|
||||
" #f\n"
|
||||
@@ -494,11 +497,14 @@ TEST_F(FormRegressionTest, FinalBasicTypeP) {
|
||||
std::string type = "(function basic type symbol)";
|
||||
std::string expected =
|
||||
"(defun test-function ((arg0 basic) (arg1 type))\n"
|
||||
" (let\n"
|
||||
" ((v1-0 (-> arg0 type)) (a0-1 object))\n"
|
||||
" (until\n"
|
||||
" (begin (set! v1-0 (-> v1-0 parent)) (= v1-0 a0-1))\n"
|
||||
" (if (= v1-0 arg1) (return #t))\n"
|
||||
" (let ((v1-0 (-> arg0 type))\n"
|
||||
" (a0-1 object)\n"
|
||||
" )\n"
|
||||
" (until (= v1-0 a0-1)\n"
|
||||
" (if (= v1-0 arg1)\n"
|
||||
" (return #t)\n"
|
||||
" )\n"
|
||||
" (set! v1-0 (-> v1-0 parent))\n"
|
||||
" )\n"
|
||||
" )\n"
|
||||
" #f\n"
|
||||
@@ -547,11 +553,12 @@ TEST_F(FormRegressionTest, ExprTypeTypep) {
|
||||
|
||||
std::string expected =
|
||||
"(begin\n"
|
||||
" (let\n"
|
||||
" ((v1-0 object))\n"
|
||||
" (until\n"
|
||||
" (begin (set! arg0 (-> arg0 parent)) (or (= arg0 v1-0) (zero? arg0)))\n"
|
||||
" (if (= arg0 arg1) (return #t))\n"
|
||||
" (let ((v1-0 object))\n"
|
||||
" (until (or (= arg0 v1-0) (zero? arg0))\n"
|
||||
" (if (= arg0 arg1)\n"
|
||||
" (return #t)\n"
|
||||
" )\n"
|
||||
" (set! arg0 (-> arg0 parent))\n"
|
||||
" )\n"
|
||||
" )\n"
|
||||
" #f\n"
|
||||
|
||||
Reference in New Issue
Block a user