Optimize imports

This commit is contained in:
Astrash
2023-10-27 14:22:35 +11:00
parent c3909ca1e0
commit 9a94b26126
11 changed files with 47 additions and 60 deletions

View File

@@ -1,10 +1,10 @@
package com.dfsek.terra.addons.terrascript.v2;
import com.dfsek.terra.addons.terrascript.v2.exception.CompilationException;
import java.util.ArrayList;
import java.util.List;
import com.dfsek.terra.addons.terrascript.v2.exception.CompilationException;
public class ErrorHandler {

View File

@@ -1,15 +1,14 @@
package com.dfsek.terra.addons.terrascript.v2;
import com.dfsek.terra.addons.terrascript.v2.codegen.CodegenType;
import com.dfsek.terra.addons.terrascript.v2.codegen.NativeFunction;
import com.dfsek.terra.api.util.generic.pair.Pair;
import com.google.common.collect.Streams;
import javax.annotation.Nullable;
import java.util.List;
import com.dfsek.terra.addons.terrascript.v2.codegen.CodegenType;
import com.dfsek.terra.addons.terrascript.v2.codegen.NativeFunction;
import com.dfsek.terra.api.util.generic.pair.Pair;
public interface Type {

View File

@@ -1,8 +1,5 @@
package com.dfsek.terra.addons.terrascript.v2.codegen.asm;
import com.dfsek.terra.api.structure.Structure;
public class DynamicClassLoader extends ClassLoader {
public DynamicClassLoader(Class<?> clazz) {
super(clazz.getClassLoader());

View File

@@ -1,5 +1,23 @@
package com.dfsek.terra.addons.terrascript.v2.codegen.asm;
import org.objectweb.asm.ClassReader;
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.ClassWriter;
import org.objectweb.asm.Label;
import org.objectweb.asm.MethodVisitor;
import org.objectweb.asm.Opcodes;
import org.objectweb.asm.commons.LocalVariablesSorter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import com.dfsek.terra.addons.terrascript.v2.Type;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedExpr;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedExpr.Assignment;
@@ -22,7 +40,6 @@ import com.dfsek.terra.addons.terrascript.v2.ast.TypedStmt.NoOp;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedStmt.Return;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedStmt.VariableDeclaration;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedStmt.While;
import com.dfsek.terra.addons.terrascript.v2.codegen.CodegenType;
import com.dfsek.terra.addons.terrascript.v2.codegen.CodegenType.InstructionType;
import com.dfsek.terra.addons.terrascript.v2.codegen.NativeFunction;
@@ -31,24 +48,6 @@ import com.dfsek.terra.addons.terrascript.v2.exception.CompilerBugException;
import com.dfsek.terra.addons.terrascript.v2.util.ASMUtil;
import com.dfsek.terra.api.util.generic.pair.Pair;
import org.objectweb.asm.ClassReader;
import org.objectweb.asm.ClassVisitor;
import org.objectweb.asm.ClassWriter;
import org.objectweb.asm.Label;
import org.objectweb.asm.MethodVisitor;
import org.objectweb.asm.Opcodes;
import org.objectweb.asm.commons.LocalVariablesSorter;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayDeque;
import java.util.Deque;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Objects;
import static com.dfsek.terra.addons.terrascript.v2.util.ASMUtil.dynamicName;
public class TerraScriptClassGenerator {

View File

@@ -7,12 +7,6 @@
package com.dfsek.terra.addons.terrascript.v2.lexer;
import com.dfsek.terra.addons.terrascript.v2.parser.ParseException;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.EOFException;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.FormatException;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.TokenizerException;
import com.google.common.collect.Sets;
import java.util.ArrayList;
@@ -20,7 +14,11 @@ import java.util.Arrays;
import java.util.List;
import java.util.Set;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.EOFException;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.FormatException;
import com.dfsek.terra.addons.terrascript.v2.exception.lexer.TokenizerException;
import com.dfsek.terra.addons.terrascript.v2.lexer.Token.TokenType;
import com.dfsek.terra.addons.terrascript.v2.parser.ParseException;
public class Lexer {

View File

@@ -1,5 +1,7 @@
package com.dfsek.terra.addons.terrascript.v2.semanticanalysis;
import java.util.List;
import com.dfsek.terra.addons.terrascript.v2.Environment;
import com.dfsek.terra.addons.terrascript.v2.Environment.Symbol;
import com.dfsek.terra.addons.terrascript.v2.ErrorHandler;
@@ -19,9 +21,7 @@ import com.dfsek.terra.addons.terrascript.v2.ast.Stmt;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.IdentifierAlreadyDeclaredException;
import com.dfsek.terra.api.util.generic.pair.Pair;
import java.util.List;
import static com.dfsek.terra.addons.terrascript.v2.Environment.ScopeException.*;
import static com.dfsek.terra.addons.terrascript.v2.Environment.ScopeException.SymbolAlreadyExistsException;
public class ScopeAnalyzer implements Visitor<Void>, Stmt.Visitor<Void> {

View File

@@ -21,7 +21,6 @@ import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidA
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidCalleeException;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidFunctionDeclarationException;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidTypeException;
import com.dfsek.terra.addons.terrascript.v2.parser.ParseException;
import com.dfsek.terra.api.util.generic.pair.Pair;
import static com.dfsek.terra.addons.terrascript.v2.util.OrdinalUtil.ordinalOf;

View File

@@ -1,5 +1,7 @@
package codegen;
import org.junit.jupiter.api.Test;
import com.dfsek.terra.addons.terrascript.v2.ErrorHandler;
import com.dfsek.terra.addons.terrascript.v2.ast.Stmt.Block;
import com.dfsek.terra.addons.terrascript.v2.ast.TypedStmt;
@@ -9,8 +11,6 @@ import com.dfsek.terra.addons.terrascript.v2.lexer.Lexer;
import com.dfsek.terra.addons.terrascript.v2.parser.Parser;
import com.dfsek.terra.addons.terrascript.v2.semanticanalysis.SemanticAnalyzer;
import org.junit.jupiter.api.Test;
public class CodeGenTest {

View File

@@ -1,14 +1,11 @@
package lexer;
import com.dfsek.terra.addons.terrascript.v2.lexer.Lexer;
import com.dfsek.terra.addons.terrascript.v2.lexer.SourcePosition;
import com.dfsek.terra.addons.terrascript.v2.lexer.Token;
import com.dfsek.terra.addons.terrascript.v2.lexer.Token.TokenType;
import org.junit.jupiter.api.Test;
import com.dfsek.terra.addons.terrascript.v2.lexer.Lexer;
import com.dfsek.terra.addons.terrascript.v2.lexer.SourcePosition;
import com.dfsek.terra.addons.terrascript.v2.lexer.Token;
import com.dfsek.terra.addons.terrascript.v2.lexer.Token.TokenType;
import static org.junit.jupiter.api.Assertions.*;

View File

@@ -7,13 +7,12 @@
package lexer;
import com.dfsek.terra.addons.terrascript.v2.lexer.LookaheadStream;
import com.dfsek.terra.addons.terrascript.v2.lexer.Char;
import com.dfsek.terra.addons.terrascript.v2.lexer.SourcePosition;
import org.junit.jupiter.api.Test;
import com.dfsek.terra.addons.terrascript.v2.lexer.Char;
import com.dfsek.terra.addons.terrascript.v2.lexer.LookaheadStream;
import com.dfsek.terra.addons.terrascript.v2.lexer.SourcePosition;
import static org.junit.jupiter.api.Assertions.*;

View File

@@ -1,17 +1,16 @@
package semanticanalysis;
import org.junit.jupiter.api.Test;
import com.dfsek.terra.addons.terrascript.v2.ErrorHandler;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.IdentifierAlreadyDeclaredException;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidCalleeException;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.UndefinedReferenceException;
import com.dfsek.terra.addons.terrascript.v2.semanticanalysis.SemanticAnalyzer;
import com.dfsek.terra.addons.terrascript.v2.lexer.Lexer;
import com.dfsek.terra.addons.terrascript.v2.parser.Parser;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidFunctionDeclarationException;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.InvalidTypeException;
import org.junit.jupiter.api.Test;
import com.dfsek.terra.addons.terrascript.v2.exception.semanticanalysis.UndefinedReferenceException;
import com.dfsek.terra.addons.terrascript.v2.lexer.Lexer;
import com.dfsek.terra.addons.terrascript.v2.parser.Parser;
import com.dfsek.terra.addons.terrascript.v2.semanticanalysis.SemanticAnalyzer;
import static org.junit.jupiter.api.Assertions.*;