package org.zeromq.czmq;

public class ZFrame implements AutoCloseable {

    long pointer;

    public ZFrame() {
        pointer = __init();
    }

    public ZFrame(long address) {
        pointer = address;
    }

    public ZFrame(byte[] buf, long size) {
        pointer = __init(buf, size);
    }
    native static long __init();

    native static long __init(byte[] buf, long size);

    native static void __destroy(long pointer);

    @Override
    public void close() {
        __destroy(pointer);
        pointer = 0;
    }
}

@@ -122,24 +122,31 @@
   pointer = 
+ZFrame.
 __init();%0A  
@@ -143,16 +143,16 @@
 init();%0A
-
     %7D%0A%0A 
@@ -279,16 +279,23 @@
 inter = 
+ZFrame.
 __init(b
@@ -310,16 +310,87 @@
 );%0A    %7D
+%0A%0A    public long size() %7B%0A        return ZFrame.__size(pointer);%0A    %7D
 %0A    nat
@@ -516,24 +516,70 @@
  pointer);%0A%0A
+    native static long __size(long pointer);%0A%0A
     @Overrid
@@ -606,24 +606,24 @@
 ose() %7B%0A
-
         
 __destro
@@ -614,16 +614,23 @@
         
+ZFrame.
 __destro

Call from the static context