class GrpcKit::Codec

Public Class Methods

new(marshal:, unmarshal:, marshal_method:, unmarshal_method:) click to toggle source

@param marshal [Class, GrpcKit::Grpc::Stream] @param unmarshal [Class, GrpcKit::Grpc::Stream] @param marshal_method [Symbol] @param unmarshal_method [Symbol]

# File lib/grpc_kit/codec.rb, line 9
def initialize(marshal:, unmarshal:, marshal_method:, unmarshal_method:)
  @marshal = marshal
  @unmarshal = unmarshal
  @marshal_method = marshal_method
  @unmarshal_method = unmarshal_method
end

Public Instance Methods

decode(data) click to toggle source

@param data [String] @return [String]

# File lib/grpc_kit/codec.rb, line 24
def decode(data)
  @unmarshal.send(@unmarshal_method, data)
end
encode(data) click to toggle source

@param data [String] @return [String]

# File lib/grpc_kit/codec.rb, line 18
def encode(data)
  @marshal.send(@marshal_method, data)
end