Browse Source

Format of output: Joint bodies of if statement with single-line "} else {"

pull/1/head^2
David Srbecký 18 years ago
parent
commit
e252a7d1f2
  1. 30
      bin/Debug/output.cs
  2. 9
      src/AstBuilder.cs

30
bin/Debug/output.cs

@ -178,8 +178,7 @@ namespace Reversi
int expr158 = expr152 + 1; int expr158 = expr152 + 1;
expr151.blackSafeCount = expr158; expr151.blackSafeCount = expr158;
} }
} } else {
else {
if (squares[i, j] == White) { if (squares[i, j] == White) {
IL__dup(this); IL__dup(this);
object expr176 = expr175.whiteCount; object expr176 = expr175.whiteCount;
@ -197,8 +196,7 @@ namespace Reversi
int expr1AB = expr1A5 + 1; int expr1AB = expr1A5 + 1;
expr1A4.whiteSafeCount = expr1AB; expr1A4.whiteSafeCount = expr1AB;
goto BasicBlock_327; goto BasicBlock_327;
} } else {
else {
goto BasicBlock_327; goto BasicBlock_327;
} }
} }
@ -222,8 +220,7 @@ namespace Reversi
for (int k = 0; k < col && !V_3; k++) { for (int k = 0; k < col && !V_3; k++) {
if (squares[row, k] == Empty) { if (squares[row, k] == Empty) {
V_3 = 1; V_3 = 1;
} } else {
else {
if (squares[row, k] != i || !safeDiscs[row, k]) { if (squares[row, k] != i || !safeDiscs[row, k]) {
V_5 = 1; V_5 = 1;
} }
@ -233,8 +230,7 @@ namespace Reversi
for (; k < 8 && !V_4; k++) { for (; k < 8 && !V_4; k++) {
if (squares[row, k] == Empty) { if (squares[row, k] == Empty) {
V_4 = 1; V_4 = 1;
} } else {
else {
if (squares[row, k] != i || !safeDiscs[row, k]) { if (squares[row, k] != i || !safeDiscs[row, k]) {
V_6 = 1; V_6 = 1;
} }
@ -250,8 +246,7 @@ namespace Reversi
for (int j = 0; j < row && !V_3; j++) { for (int j = 0; j < row && !V_3; j++) {
if (squares[j, col] == Empty) { if (squares[j, col] == Empty) {
V_3 = 1; V_3 = 1;
} } else {
else {
if (squares[j, col] != i || !safeDiscs[j, col]) { if (squares[j, col] != i || !safeDiscs[j, col]) {
V_5 = 1; V_5 = 1;
} }
@ -261,8 +256,7 @@ namespace Reversi
for (; j < 8 && !V_4; j++) { for (; j < 8 && !V_4; j++) {
if (squares[j, col] == Empty) { if (squares[j, col] == Empty) {
V_4 = 1; V_4 = 1;
} } else {
else {
if (squares[j, col] != i || !safeDiscs[j, col]) { if (squares[j, col] != i || !safeDiscs[j, col]) {
V_6 = 1; V_6 = 1;
} }
@ -280,8 +274,7 @@ namespace Reversi
for (; j >= 0 && k >= 0 && !V_3; k--) { for (; j >= 0 && k >= 0 && !V_3; k--) {
if (squares[j, k] == Empty) { if (squares[j, k] == Empty) {
V_3 = 1; V_3 = 1;
} } else {
else {
if (squares[j, k] != i || !safeDiscs[j, k]) { if (squares[j, k] != i || !safeDiscs[j, k]) {
V_5 = 1; V_5 = 1;
} }
@ -293,8 +286,7 @@ namespace Reversi
for (; j < 8 && k < 8 && !V_4; k++) { for (; j < 8 && k < 8 && !V_4; k++) {
if (squares[j, k] == Empty) { if (squares[j, k] == Empty) {
V_4 = 1; V_4 = 1;
} } else {
else {
if (squares[j, k] != i || !safeDiscs[j, k]) { if (squares[j, k] != i || !safeDiscs[j, k]) {
V_6 = 1; V_6 = 1;
} }
@ -313,8 +305,7 @@ namespace Reversi
for (; j >= 0 && k < 8 && !V_3; k++) { for (; j >= 0 && k < 8 && !V_3; k++) {
if (squares[j, k] == Empty) { if (squares[j, k] == Empty) {
V_3 = 1; V_3 = 1;
} } else {
else {
if (squares[j, k] != i || !safeDiscs[j, k]) { if (squares[j, k] != i || !safeDiscs[j, k]) {
V_5 = 1; V_5 = 1;
} }
@ -326,8 +317,7 @@ namespace Reversi
for (; j < 8 && k >= 0 && !V_4; k--) { for (; j < 8 && k >= 0 && !V_4; k--) {
if (squares[j, k] == Empty) { if (squares[j, k] == Empty) {
V_4 = 1; V_4 = 1;
} } else {
else {
if (squares[j, k] != i || !safeDiscs[j, k]) { if (squares[j, k] != i || !safeDiscs[j, k]) {
V_6 = 1; V_6 = 1;
} }

9
src/AstBuilder.cs

@ -51,12 +51,9 @@ namespace Decompiler
astCompileUnit.AcceptVisitor(csOutVisitor, null); astCompileUnit.AcceptVisitor(csOutVisitor, null);
string code = csOutVisitor.Text; string code = csOutVisitor.Text;
// code = code.Replace(":\r\n\t\t\t", ": "); for(int i = 10; i >= 0; i--) {
// code = code.Replace(": }", ":\r\n\t\t\t}"); code = code.Replace("\r\n" + new string('\t', i) + "else {", " else {");
// code = code.Replace(":\r\n\t\t", ": "); }
// code = code.Replace(": }", ":\r\n\t\t}");
// code = code.Replace(":\r\n\t", ": ");
// code = code.Replace(": }", ":\r\n\t}");
code = code.Replace("\t", " "); code = code.Replace("\t", " ");
code = code.Replace("\"/***", ""); code = code.Replace("\"/***", "");
code = code.Replace("***/\";", ""); code = code.Replace("***/\";", "");

Loading…
Cancel
Save