|
3 | 3 | import io.github.syst3ms.skriptparser.file.FileElement; |
4 | 4 | import io.github.syst3ms.skriptparser.lang.Expression; |
5 | 5 | import io.github.syst3ms.skriptparser.lang.Variable; |
6 | | -import io.github.syst3ms.skriptparser.lang.base.ConvertedExpression; |
7 | 6 | import io.github.syst3ms.skriptparser.log.ErrorType; |
8 | 7 | import io.github.syst3ms.skriptparser.log.SkriptLogger; |
9 | 8 | import io.github.syst3ms.skriptparser.parsing.ParserState; |
10 | 9 | import io.github.syst3ms.skriptparser.parsing.SyntaxParser; |
11 | 10 | import io.github.syst3ms.skriptparser.types.PatternType; |
12 | | -import io.github.syst3ms.skriptparser.types.conversions.Converters; |
13 | 11 |
|
14 | 12 | import java.util.Optional; |
15 | | -import java.util.function.Function; |
16 | 13 |
|
17 | 14 | public class ExpressionLoader<T> extends OptionLoader { |
18 | 15 |
|
@@ -60,22 +57,9 @@ public boolean loadEntry(SectionConfiguration config, FileElement element, Parse |
60 | 57 | } |
61 | 58 |
|
62 | 59 | Expression<?> expression = exprOptional.get(); |
63 | | - // This broke stuff, but I'm going to leave it just in case |
64 | | -// if (Variable.class.isAssignableFrom(expression.getClass())) { |
65 | | -// Class<?> returnType = expression.getReturnType(); |
66 | | -// |
67 | | -// if (!this.typeClass.isAssignableFrom(returnType)) { |
68 | | -// Optional<? extends Function<?, Optional<? extends T>>> converter = Converters.getConverter(returnType, this.typeClass); |
69 | | -// if (converter.isPresent()) { |
70 | | -// ConvertedExpression<?, T> tConvertedExpression = ConvertedExpression.newInstance(expression, this.typeClass, converter.get()); |
71 | | -// config.getData().put(this.key, tConvertedExpression); |
72 | | -// return true; |
73 | | -// } |
74 | | -// |
75 | | -// logger.error("Expression '" + s + "' does not return a " + typeClass.getSimpleName() + " found: " + expression.getReturnType().getSimpleName(), ErrorType.SEMANTIC_ERROR); |
76 | | -// return false; |
77 | | -// } |
78 | | -// } |
| 60 | + if (expression instanceof Variable<?> var) { |
| 61 | + var.setReturnType(this.typeClass); |
| 62 | + } |
79 | 63 |
|
80 | 64 | config.getData().put(this.key, expression); |
81 | 65 | return true; |
|
0 commit comments