qitab / cl-protobufs

Common Lisp protocol buffer implementation.
MIT License
78 stars 17 forks source link

Adding real proto streaming and memory cleanup #350

Closed copybara-service[bot] closed 2 years ago

copybara-service[bot] commented 2 years ago

Adding real proto streaming and memory cleanup

This is a cl that wants to be way to much to way to many.

In grpc/client.cc we fix some issues with improperly instantiated c-objects. In grpc/client.lisp we give each kind of action it's own tag and don't force them to use one tag. In grpc/protobuf-integration.lisp we add a generic dispatch method to route our streaming calls from cl-protobufs. This means we only need to worry about one function name isntead of a function name for each kind of grpc action we wish to make.

In cl-protobufs/define-proto.lisp we add the different possible streaming calls we wish to make. These should (later) be wrapped in a nice with-call macro that deletes the call at the and, but we save that for another cl.