private void emitConstructors(ClassEmitter ce, List<? extends MethodInfo> constructors) {
    boolean seenNull = false;
    for (final MethodInfo constructor : constructors) {
      CodeEmitter e = EmitUtils.begin_method(ce, constructor, Constants.ACC_PUBLIC);
      e.load_this();
      e.dup();
      e.load_args();
      Signature sig = constructor.getSignature();
      seenNull = seenNull || sig.getDescriptor().equals("()V");
      e.super_invoke_constructor(sig);
      e.invoke_static_this(BIND_CALLBACKS);
      if (!interceptDuringConstruction) {
        e.load_this();
        e.push(1);
        e.putfield(CONSTRUCTED_FIELD);
      }
      e.return_value();
      e.end_method();
    }
    if (!classOnly && !seenNull && arguments == null) {
      throw new IllegalArgumentException("Superclass has no null constructors but no arguments were given");
    }
  }
private void emitConstructors(ClassEmitter ce, List<? extends MethodInfo> constructors)