String methodName,
TypeDesc ret,
TypeDesc[] params) {
+ for(TypeDesc param : params)
+ if(param.equals(TypeDesc.VOID))
+ throw new IllegalArgumentException();
MethodVisitor methodVisitor = classVisitor.visitMethod(access, methodName,
MethodDesc.forArguments(ret, params).getDescriptor(),
null, null);
return new MethodBuilder(this, moduleBuilder, (access&Opcodes.ACC_STATIC) != 0, methodVisitor, params);
}
- private MethodVisitor augmentMethodVisitor(String methodName, MethodVisitor methodVisitor) {
+ private MethodVisitor augmentMethodVisitor(final String methodName, MethodVisitor methodVisitor) {
if(SCLCompilerConfiguration.TRACE_MAX_METHOD_SIZE && moduleBuilder != null) {
methodVisitor = new CodeSizeEvaluator(methodVisitor) {
@Override
String methodName,
TypeDesc ret,
TypeDesc[] params) {
+ for(TypeDesc param : params)
+ if(param.equals(TypeDesc.VOID))
+ throw new IllegalArgumentException();
MethodVisitor methodVisitor = classVisitor.visitMethod(access, methodName,
MethodDesc.forArguments(ret, params).getDescriptor(),
null, null);
String methodName,
TypeDesc ret,
TypeDesc[] params) {
+ for(TypeDesc param : params)
+ if(param.equals(TypeDesc.VOID))
+ throw new IllegalArgumentException();
MethodVisitor methodVisitor = classVisitor.visitMethod(access, methodName,
MethodDesc.forArguments(ret, params).getDescriptor(),
null, null);
public void addField(int access, String fieldName,
TypeDesc type) {
+ if(type.equals(TypeDesc.VOID))
+ throw new IllegalArgumentException();
FieldVisitor fieldVisitor = classVisitor.visitField(access, fieldName, type.getDescriptor(), null, null);
fieldVisitor.visitEnd();
}
System.out.println();
}*/
}
+
+ public ModuleBuilder getModuleBuilder() {
+ return moduleBuilder;
+ }
}