| // Java class go.structs.Structs is a proxy for talking to a Go program. |
| // gobind -lang=java structs |
| // |
| // File is generated by gobind. Do not edit. |
| package go.structs; |
| |
| import go.Seq; |
| |
| public abstract class Structs { |
| static { |
| Seq.touch(); // for loading the native library |
| init(); |
| } |
| |
| private Structs() {} // uninstantiable |
| |
| // touch is called from other bound packages to initialize this package |
| public static void touch() {} |
| |
| private static native void init(); |
| |
| public static final class S extends Seq.Proxy { |
| private S(go.Seq.Ref ref) { super(ref); } |
| |
| public final native double getX(); |
| public final native void setX(double v); |
| |
| public final native double getY(); |
| public final native void setY(double v); |
| |
| public native S Identity() throws Exception; |
| public native double Sum(); |
| @Override public boolean equals(Object o) { |
| if (o == null || !(o instanceof S)) { |
| return false; |
| } |
| S that = (S)o; |
| double thisX = getX(); |
| double thatX = that.getX(); |
| if (thisX != thatX) { |
| return false; |
| } |
| double thisY = getY(); |
| double thatY = that.getY(); |
| if (thisY != thatY) { |
| return false; |
| } |
| return true; |
| } |
| |
| @Override public int hashCode() { |
| return java.util.Arrays.hashCode(new Object[] {getX(), getY()}); |
| } |
| |
| @Override public String toString() { |
| StringBuilder b = new StringBuilder(); |
| b.append("S").append("{"); |
| b.append("X:").append(getX()).append(","); |
| b.append("Y:").append(getY()).append(","); |
| return b.append("}").toString(); |
| } |
| } |
| |
| public static final class S2 extends Seq.Proxy implements I { |
| private S2(go.Seq.Ref ref) { super(ref); } |
| |
| public native void M(); |
| public native String String(); |
| @Override public boolean equals(Object o) { |
| if (o == null || !(o instanceof S2)) { |
| return false; |
| } |
| S2 that = (S2)o; |
| return true; |
| } |
| |
| @Override public int hashCode() { |
| return java.util.Arrays.hashCode(new Object[] {}); |
| } |
| |
| @Override public String toString() { |
| return String(); |
| } |
| } |
| |
| public interface I { |
| public void M(); |
| } |
| |
| private static final class proxyI extends Seq.Proxy implements I { |
| proxyI(Seq.Ref ref) { super(ref); } |
| |
| public native void M(); |
| } |
| |
| |
| public static native S Identity(S s); |
| public static native S IdentityWithError(S s) throws Exception; |
| } |