17 lines
534 B
Java
Raw Normal View History

package abstractSyntaxTree.Class;
2024-05-08 10:10:44 +02:00
import TypeCheck.TypeCheckResult;
import org.objectweb.asm.ClassWriter;
2024-05-08 14:28:01 +02:00
import org.objectweb.asm.TypeReference;
2024-05-08 10:10:44 +02:00
2024-05-09 14:20:55 +02:00
import java.util.HashMap;
2024-05-08 10:10:44 +02:00
import java.util.List;
2024-05-08 10:10:44 +02:00
public interface IClass {
// visit method for code generation
2024-05-09 14:20:55 +02:00
TypeCheckResult typeCheck(HashMap<String, HashMap<String, HashMap<String, List<String>>>> methodContext, HashMap<String, HashMap<String, String>> typeContext, List<MethodDecl> fieldsOrMethods) throws Exception;
2024-05-08 14:28:01 +02:00
void codeGen(ClassWriter cw) throws Exception;
}