// Java Package interfaces is a proxy for talking to a Go program. // gobind -lang=java interfaces // // File is generated by gobind. Do not edit. package go.interfaces; import go.Seq; public abstract class Interfaces { private Interfaces() {} // uninstantiable public static int Add3(I r) { go.Seq _in = new go.Seq(); go.Seq _out = new go.Seq(); int _result; _in.writeRef(r.ref()); Seq.send(DESCRIPTOR, CALL_Add3, _in, _out); _result = _out.readInt32(); return _result; } public interface I extends go.Seq.Object { public int Rand(); public static abstract class Stub implements I { static final String DESCRIPTOR = "go.interfaces.I"; private final go.Seq.Ref ref; public Stub() { ref = go.Seq.createRef(this); } public go.Seq.Ref ref() { return ref; } public void call(int code, go.Seq in, go.Seq out) { switch (code) { case Proxy.CALL_Rand: { int result = this.Rand(); out.writeInt32(result); return; } default: throw new RuntimeException("unknown code: "+ code); } } } static final class Proxy implements I { static final String DESCRIPTOR = Stub.DESCRIPTOR; private go.Seq.Ref ref; Proxy(go.Seq.Ref ref) { this.ref = ref; } public go.Seq.Ref ref() { return ref; } public void call(int code, go.Seq in, go.Seq out) { throw new RuntimeException("cycle: cannot call proxy"); } public int Rand() { go.Seq _in = new go.Seq(); go.Seq _out = new go.Seq(); int _result; _in.writeRef(ref); Seq.send(DESCRIPTOR, CALL_Rand, _in, _out); _result = _out.readInt32(); return _result; } static final int CALL_Rand = 0x10a; } } public static I Seven() { go.Seq _in = new go.Seq(); go.Seq _out = new go.Seq(); I _result; Seq.send(DESCRIPTOR, CALL_Seven, _in, _out); _result = new I.Proxy(_out.readRef()); return _result; } public interface WithParam extends go.Seq.Object { public void HasParam(boolean p0); public static abstract class Stub implements WithParam { static final String DESCRIPTOR = "go.interfaces.WithParam"; private final go.Seq.Ref ref; public Stub() { ref = go.Seq.createRef(this); } public go.Seq.Ref ref() { return ref; } public void call(int code, go.Seq in, go.Seq out) { switch (code) { case Proxy.CALL_HasParam: { boolean param_p0; param_p0 = in.readBool(); this.HasParam(param_p0); return; } default: throw new RuntimeException("unknown code: "+ code); } } } static final class Proxy implements WithParam { static final String DESCRIPTOR = Stub.DESCRIPTOR; private go.Seq.Ref ref; Proxy(go.Seq.Ref ref) { this.ref = ref; } public go.Seq.Ref ref() { return ref; } public void call(int code, go.Seq in, go.Seq out) { throw new RuntimeException("cycle: cannot call proxy"); } public void HasParam(boolean p0) { go.Seq _in = new go.Seq(); go.Seq _out = new go.Seq(); _in.writeRef(ref); _in.writeBool(p0); Seq.send(DESCRIPTOR, CALL_HasParam, _in, _out); } static final int CALL_HasParam = 0x10a; } } private static final int CALL_Add3 = 1; private static final int CALL_Seven = 2; private static final String DESCRIPTOR = "interfaces"; }