private static void bufferReadStatement( final TPacked t, final MethodSpec.Builder setb) { setb.beginControlFlow(""); setb.addStatement("final int off = this.getByteOffset()"); final int bytes = t.getSizeInOctets().getValue().intValue(); for (int index = 0; index < bytes; ++index) { setb.addStatement( "this.$N.put($L, this.$N.get(off + $L))", "pack_buffer", Integer.valueOf(index), "buffer", Integer.valueOf(index)); } setb.endControlFlow(); }
"this.$N = ByteBuffer.allocate($L)", "pack_buffer", Integer.valueOf(t.getSizeInOctets().getValue().intValue())); jmb.addStatement( "this.$N.order($T.$L)",
private static void bufferWriteStatement( final TPacked t, final MethodSpec.Builder setb, final Class<?> container_type, final String iput, final String value) { setb.beginControlFlow(""); setb.addStatement("final int off = this.getByteOffset()"); setb.addStatement( "this.$N.$N(0, ($T) $N)", "pack_buffer", iput, container_type, value); final int bytes = t.getSizeInOctets().getValue().intValue(); for (int index = 0; index < bytes; ++index) { setb.addStatement( "this.$N.put(off + $L, this.$N.get($L))", "buffer", Integer.valueOf(index), "pack_buffer", Integer.valueOf(index)); } setb.endControlFlow(); }
generatePackedFactoryMethods( imp_name, int_name, ptr_class, jcb); generateSizeMethods(jcb, t.getSizeInOctets()); generatePackedByteOffsetMethod(jcb);