func transformToPromisedAnswer(s *capnp.Segment, answer rpccapnp.PromisedAnswer, transform []capnp.PipelineOp) error { opList, err := rpccapnp.NewPromisedAnswer_Op_List(s, int32(len(transform))) if err != nil { return err } for i, op := range transform { opList.At(i).SetGetPointerField(uint16(op.Field)) } err = answer.SetTransform(opList) return err }