# frozen_string_literal: true require 'google/rpc/status_pb' require 'google/protobuf/well_known_types' module DetailedErrorHelpers def new_detailed_error(error_code, error_message, details) status_error = Google::Rpc::Status.new( code: error_code, message: error_message, details: [Google::Protobuf::Any.pack(details)] ) GRPC::BadStatus.new( error_code, error_message, { "grpc-status-details-bin" => Google::Rpc::Status.encode(status_error) }) end end