/* 71 */ ClassEmitter ce = new ClassEmitter(v);
/* 72 */ ce.begin_class(46, 1, getClassName(), targetType, null, "<generated>");
/* */
/* 79 */ ce.declare_field(18, "CGLIB$RWBean", targetType, null, null);
/* */
/* 81 */ CodeEmitter e = ce.begin_method(1, ImmutableBean.CSTRUCT_OBJECT, null, null);
/* 82 */ e.load_this();
/* 83 */ e.super_invoke_constructor();
/* 84 */ e.load_this();
/* 85 */ e.load_arg(0);
/* 86 */ e.checkcast(targetType);
/* 87 */ e.putfield("CGLIB$RWBean");
/* 88 */ e.return_value();
/* 89 */ e.end_method();
/* */
/* 91 */ PropertyDescriptor[] descriptors = ReflectUtils.getBeanProperties(this.target);
/* 92 */ Method[] getters = ReflectUtils.getPropertyMethods(descriptors, true, false);
/* 93 */ Method[] setters = ReflectUtils.getPropertyMethods(descriptors, false, true);
/* */
/* 95 */ for (int i = 0; i < getters.length; i++) {
/* 96 */ MethodInfo getter = ReflectUtils.getMethodInfo(getters[i]);
/* 97 */ e = EmitUtils.begin_method(ce, getter, 1);
/* 98 */ e.load_this();
/* 99 */ e.getfield("CGLIB$RWBean");
/* 100 */ e.invoke(getter);
/* 101 */ e.return_value();
/* 102 */ e.end_method();
/* */ }
/* */
/* 105 */ for (int i = 0; i < setters.length; i++) {
/* 106 */ MethodInfo setter = ReflectUtils.getMethodInfo(setters[i]);
/* 107 */ e = EmitUtils.begin_method(ce, setter, 1);
/* 108 */ e.throw_exception(ImmutableBean.ILLEGAL_STATE_EXCEPTION, "Bean is immutable");
/* 109 */ e.end_method();
/* */ }
/* */
/* 112 */ ce.end_class();
/* */ }