Skip to content

Commit 597de99

Browse files
committed
Improve naming in SemanticAnalyzer and SemanticErrorMJLogger
1 parent d3a9ef3 commit 597de99

2 files changed

Lines changed: 36 additions & 39 deletions

File tree

src/main/java/dev/askov/mjcompiler/SemanticAnalyzer.java

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -767,7 +767,7 @@ public void visit(MethodCallDesignatorStatement methodCallDesignatorStatement) {
767767
detectSemanticError(
768768
null,
769769
methodCallDesignatorStatement,
770-
SemanticErrorKind.UNINVOKABLE_METHOD,
770+
SemanticErrorKind.NON_INVOCABLE_METHOD,
771771
invokedMethodSignatureGenerator.getMethodSignature(),
772772
classMethodSignature.getThisParameterType());
773773
} else {
@@ -1173,7 +1173,7 @@ public void visit(MethodCallFactor methodCallFactor) {
11731173
detectSemanticError(
11741174
null,
11751175
methodCallFactor,
1176-
SemanticErrorKind.UNINVOKABLE_METHOD,
1176+
SemanticErrorKind.NON_INVOCABLE_METHOD,
11771177
invokedMethodSignatureGenerator.getMethodSignature(),
11781178
classMethodSignature.getThisParameterType());
11791179
} else {
@@ -1306,33 +1306,33 @@ public void visit(IdentDesignator identDesignator) {
13061306
}
13071307

13081308
@Override
1309-
public void visit(ArrayElemAccessDesignator arrayElemAcessDesignator) {
1310-
var array = arrayElemAcessDesignator.getDesignatorStart().obj;
1309+
public void visit(ArrayElemAccessDesignator arrayElemAccessDesignator) {
1310+
var array = arrayElemAccessDesignator.getDesignatorStart().obj;
13111311
if (array.getType().getKind() != Struct.Array) {
13121312
if (!array.getType().equals(MJTab.noType)) {
13131313
detectSemanticError(
1314-
null, arrayElemAcessDesignator, SemanticErrorKind.INDEXING_NON_ARRAY, array.getType());
1314+
null, arrayElemAccessDesignator, SemanticErrorKind.INDEXING_NON_ARRAY, array.getType());
13151315
} else {
13161316
detectSemanticError();
13171317
}
1318-
arrayElemAcessDesignator.obj = MJTab.noObj;
1318+
arrayElemAccessDesignator.obj = MJTab.noObj;
13191319
} else {
1320-
var indexType = arrayElemAcessDesignator.getExpr().obj.getType();
1320+
var indexType = arrayElemAccessDesignator.getExpr().obj.getType();
13211321
if (!indexType.equals(MJTab.intType)) {
13221322
detectSemanticError(
13231323
null,
1324-
arrayElemAcessDesignator,
1324+
arrayElemAccessDesignator,
13251325
SemanticErrorKind.TYPE_MISMATCH,
13261326
indexType,
13271327
MJTab.intType);
13281328
}
1329-
arrayElemAcessDesignator.obj =
1329+
arrayElemAccessDesignator.obj =
13301330
new Obj(
13311331
Obj.Elem,
13321332
"",
13331333
array.getType().getElemType() != null ? array.getType().getElemType() : MJTab.noType);
13341334
}
1335-
symbolUsageMJLogger.log(array, arrayElemAcessDesignator.getLine(), null, array);
1335+
symbolUsageMJLogger.log(array, arrayElemAccessDesignator.getLine(), null, array);
13361336
}
13371337

13381338
@Override
@@ -1396,36 +1396,36 @@ public void visit(IdentDesignatorStart identDesignatorStart) {
13961396
}
13971397

13981398
@Override
1399-
public void visit(ArrayElemAccessDesignatorStart arrayElemAcessDesignatorStart) {
1400-
var array = arrayElemAcessDesignatorStart.getDesignatorStart().obj;
1399+
public void visit(ArrayElemAccessDesignatorStart arrayElemAccessDesignatorStart) {
1400+
var array = arrayElemAccessDesignatorStart.getDesignatorStart().obj;
14011401
if (array.getType().getKind() != Struct.Array) {
14021402
if (!array.getType().equals(MJTab.noType)) {
14031403
detectSemanticError(
14041404
null,
1405-
arrayElemAcessDesignatorStart,
1405+
arrayElemAccessDesignatorStart,
14061406
SemanticErrorKind.INDEXING_NON_ARRAY,
14071407
array.getType());
14081408
} else {
14091409
detectSemanticError();
14101410
}
1411-
arrayElemAcessDesignatorStart.obj = MJTab.noObj;
1411+
arrayElemAccessDesignatorStart.obj = MJTab.noObj;
14121412
} else {
1413-
var indexType = arrayElemAcessDesignatorStart.getExpr().obj.getType();
1413+
var indexType = arrayElemAccessDesignatorStart.getExpr().obj.getType();
14141414
if (!indexType.equals(MJTab.intType)) {
14151415
detectSemanticError(
14161416
null,
1417-
arrayElemAcessDesignatorStart,
1417+
arrayElemAccessDesignatorStart,
14181418
SemanticErrorKind.TYPE_MISMATCH,
14191419
indexType,
14201420
MJTab.intType);
14211421
}
1422-
arrayElemAcessDesignatorStart.obj =
1422+
arrayElemAccessDesignatorStart.obj =
14231423
new Obj(
14241424
Obj.Elem,
14251425
"",
14261426
array.getType().getElemType() != null ? array.getType().getElemType() : MJTab.noType);
14271427
}
1428-
symbolUsageMJLogger.log(array, arrayElemAcessDesignatorStart.getLine(), null, array);
1428+
symbolUsageMJLogger.log(array, arrayElemAccessDesignatorStart.getLine(), null, array);
14291429
}
14301430

14311431
@Override

src/main/java/dev/askov/mjcompiler/loggers/SemanticErrorMJLogger.java

Lines changed: 18 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ public enum SemanticErrorKind {
5757
ACCESSING_MEMBER_OF_NON_OBJECT,
5858
UNRESOLVED_MEMBER,
5959
INCOMPATIBLE_RET_TYPE,
60-
UNINVOKABLE_METHOD,
60+
NON_INVOCABLE_METHOD,
6161
}
6262

6363
public SemanticErrorMJLogger() {
@@ -119,19 +119,19 @@ protected String messageBody(Obj obj, Object... context) {
119119
+ MJUtils.typeToString((Struct) ((Object[]) (context[1]))[1])
120120
+ "\"";
121121
case UNDEF_METHOD -> {
122-
var cntx1 = (Object[]) context[1];
123-
var overriddenMethodSignature1 = (MethodSignature) cntx1[0];
124-
message = "The method \"" + overriddenMethodSignature1.toString() + "\" is undefined";
122+
var args = (Object[]) context[1];
123+
var methodSignature = (MethodSignature) args[0];
124+
message = "The method \"" + methodSignature.toString() + "\" is undefined";
125125
}
126126
case MISPLACED_BREAK -> message = "break cannot be used outside of a loop";
127127
case MISPLACED_CONTINUE -> message = "continue cannot be used outside of a loop";
128128
case UNDEF_OP -> {
129-
var cntx2 = (Object[]) context[1];
130-
var operator = (String) cntx2[cntx2.length - 1];
129+
var args = (Object[]) context[1];
130+
var operator = (String) args[args.length - 1];
131131
var operandTypes = new StringBuilder();
132-
for (var i = 0; i < cntx2.length - 1; i++) {
133-
operandTypes.append("\"").append(MJUtils.typeToString((Struct) cntx2[i])).append("\"");
134-
if (i < cntx2.length - 2) {
132+
for (var i = 0; i < args.length - 1; i++) {
133+
operandTypes.append("\"").append(MJUtils.typeToString((Struct) args[i])).append("\"");
134+
if (i < args.length - 2) {
135135
operandTypes.append(", ");
136136
}
137137
}
@@ -154,22 +154,19 @@ protected String messageBody(Obj obj, Object... context) {
154154
case UNRESOLVED_MEMBER ->
155155
message = "\"" + obj.getName() + "\" cannot be resolved to a class member";
156156
case INCOMPATIBLE_RET_TYPE -> {
157-
var cntx3 = (Object[]) context[1];
158-
var overriddenMethodSignature2 = (ClassMethodSignature) cntx3[0];
159-
message =
160-
"The return type is incompatible with \""
161-
+ overriddenMethodSignature2.toString()
162-
+ "\"";
157+
var args = (Object[]) context[1];
158+
var methodSignature = (ClassMethodSignature) args[0];
159+
message = "The return type is incompatible with \"" + methodSignature.toString() + "\"";
163160
}
164-
case UNINVOKABLE_METHOD -> {
165-
var cntx4 = (Object[]) context[1];
166-
var overriddenMethodSignature3 = (MethodSignature) cntx4[0];
167-
var type = (Struct) cntx4[1];
161+
case NON_INVOCABLE_METHOD -> {
162+
var args = (Object[]) context[1];
163+
var methodSignature = (MethodSignature) args[0];
164+
var type = (Struct) args[1];
168165
message =
169166
"Cannot invoke \""
170-
+ overriddenMethodSignature3.getMethodName()
167+
+ methodSignature.getMethodName()
171168
+ " "
172-
+ overriddenMethodSignature3.getParameterList()
169+
+ methodSignature.getParameterList()
173170
+ "\" on the type \""
174171
+ MJUtils.typeToString(type)
175172
+ "\"";

0 commit comments

Comments
 (0)