Skip to content

Commit 1152d3e

Browse files
committed
rename to token
1 parent 42207a4 commit 1152d3e

File tree

5 files changed

+167
-167
lines changed

5 files changed

+167
-167
lines changed

src/main/java/io/polypen/Main.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package io.polypen;
22

33
import io.polypen.parse.Parser;
4-
import io.polypen.parse.Parser.ListExpr;
4+
import io.polypen.parse.Parser.ListToken;
55

66
import java.util.Scanner;
77

@@ -14,7 +14,7 @@ public static void main(String[] args) {
1414
String line = in.nextLine();
1515
sb.append(line);
1616
}
17-
ListExpr expression = Parser.parse(sb.toString());
17+
ListToken expression = Parser.parse(sb.toString());
1818
System.out.println(Parser.eval(expression));
1919
}
2020
}

src/main/java/io/polypen/parse/Macro.java

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
package io.polypen.parse;
22

3-
import io.polypen.parse.Parser.Expr;
4-
import io.polypen.parse.Parser.ListExpr;
5-
import io.polypen.parse.Parser.MinusExpr;
6-
import io.polypen.parse.Parser.MultExpr;
7-
import io.polypen.parse.Parser.MultListExpr;
8-
import io.polypen.parse.Parser.NumberExpr;
9-
import io.polypen.parse.Parser.PlusExpr;
10-
import io.polypen.parse.Parser.PlusListExpr;
3+
import io.polypen.parse.Parser.Token;
4+
import io.polypen.parse.Parser.ListToken;
5+
import io.polypen.parse.Parser.MinusToken;
6+
import io.polypen.parse.Parser.MultToken;
7+
import io.polypen.parse.Parser.MultListToken;
8+
import io.polypen.parse.Parser.NumberToken;
9+
import io.polypen.parse.Parser.PlusToken;
10+
import io.polypen.parse.Parser.PlusListToken;
1111

1212
import java.util.List;
1313

@@ -17,34 +17,34 @@ public class Macro {
1717
public static final int B_MINUSBOUND = 16;
1818
public static final int B_END = 1;
1919

20-
public static Expr applyStarMacro(List<Expr> exprs) {
21-
if (exprs.size() == 1) {
22-
return expandRecursively(exprs.getFirst());
20+
public static Token applyStarMacro(List<Token> tokens) {
21+
if (tokens.size() == 1) {
22+
return expandRecursively(tokens.getFirst());
2323
}
24-
PlusListExpr exprsCopy = PlusListExpr.create(exprs.size());
25-
MultListExpr region = MultListExpr.create(exprs.size());
26-
int[] bound = new int[exprs.size()];
27-
for (int i = 0; i < exprs.size() - 1; i++) {
28-
Expr left = exprs.get(i);
29-
Expr right = exprs.get(i + 1);
24+
PlusListToken exprsCopy = PlusListToken.create(tokens.size());
25+
MultListToken region = MultListToken.create(tokens.size());
26+
int[] bound = new int[tokens.size()];
27+
for (int i = 0; i < tokens.size() - 1; i++) {
28+
Token left = tokens.get(i);
29+
Token right = tokens.get(i + 1);
3030
if (isStrong(left, right)) {
3131
bound[i] |= B_STRONG;
3232
bound[i + 1] |= B_STRONG;
33-
if (left instanceof MinusExpr) {
33+
if (left instanceof MinusToken) {
3434
bound[i + 1] |= B_MINUSBOUND;
3535
}
3636
} else if ((bound[i] & B_STRONG) != 0) {
3737
bound[i] |= B_END;
3838
}
3939
}
40-
for (int i = 0; i < exprs.size(); i++) {
41-
Expr expr = exprs.get(i);
40+
for (int i = 0; i < tokens.size(); i++) {
41+
Token token = tokens.get(i);
4242
int b = bound[i];
4343
if ((b & B_STRONG) != 0) {
4444
if ((b & B_MINUSBOUND) != 0) {
45-
region.add(MultListExpr.of(NumberExpr.of(-1), expandRecursively(expr)));
45+
region.add(MultListToken.of(NumberToken.of(-1), expandRecursively(token)));
4646
} else {
47-
region.add(expandRecursively(expr));
47+
region.add(expandRecursively(token));
4848
}
4949
if ((b & B_END) != 0) {
5050
exprsCopy.add(unwrap(region.copy()));
@@ -55,7 +55,7 @@ public static Expr applyStarMacro(List<Expr> exprs) {
5555
exprsCopy.add(unwrap(region.copy()));
5656
region.clear();
5757
}
58-
exprsCopy.add(expandRecursively(expr));
58+
exprsCopy.add(expandRecursively(token));
5959
}
6060
}
6161
if (exprsCopy.isEmpty()) {
@@ -67,31 +67,31 @@ public static Expr applyStarMacro(List<Expr> exprs) {
6767
return exprsCopy;
6868
}
6969

70-
private static Expr unwrap(MultListExpr expr) {
70+
private static Token unwrap(MultListToken expr) {
7171
return expr.size() == 1 ? expr.getFirst() : expr;
7272
}
7373

74-
private static Expr expandRecursively(Expr expr) {
75-
if (expr == null) {
74+
private static Token expandRecursively(Token token) {
75+
if (token == null) {
7676
return null;
7777
}
78-
return switch (expr) {
79-
case ListExpr x -> applyStarMacro(x.value());
80-
default -> expr;
78+
return switch (token) {
79+
case ListToken x -> applyStarMacro(x.value());
80+
default -> token;
8181
};
8282
}
8383

84-
public static boolean isStrong(Expr left, Expr right) {
85-
if (left instanceof MultExpr || right instanceof MultExpr) {
84+
public static boolean isStrong(Token left, Token right) {
85+
if (left instanceof MultToken || right instanceof MultToken) {
8686
return true;
8787
}
88-
if (left instanceof PlusExpr || right instanceof PlusExpr) {
88+
if (left instanceof PlusToken || right instanceof PlusToken) {
8989
return false;
9090
}
91-
if (left instanceof MinusExpr) {
91+
if (left instanceof MinusToken) {
9292
return true;
9393
}
94-
if (right instanceof MinusExpr) {
94+
if (right instanceof MinusToken) {
9595
return false;
9696
}
9797
return true;

0 commit comments

Comments
 (0)