MCPcopy
hub / github.com/keploy/keploy / createTypeResolver

Function createTypeResolver

utils/grpc.go:312–321  ·  view source on GitHub ↗

createTypeResolver creates a custom type resolver from compiled proto files. This resolver enables the protojson marshaler to resolve google.protobuf.Any type URLs like "type.googleapis.com/fuzz.Inner" to their actual message descriptors.

(files []protoreflect.FileDescriptor)

Source from the content-addressed store, hash-verified

310// This resolver enables the protojson marshaler to resolve google.protobuf.Any type URLs
311// like "type.googleapis.com/fuzz.Inner" to their actual message descriptors.
312func createTypeResolver(files []protoreflect.FileDescriptor) *protoregistry.Types {
313 types := &protoregistry.Types{}
314
315 // Register all message types from all files
316 for _, file := range files {
317 registerMessagesFromFile(types, file)
318 }
319
320 return types
321} // registerMessagesFromFile recursively registers all message types from a file descriptor
322func registerMessagesFromFile(types *protoregistry.Types, file protoreflect.FileDescriptor) {
323 messages := file.Messages()
324 for i := 0; i < messages.Len(); i++ {

Callers 2

ProtoWireToJSONFunction · 0.85
TestCreateTypeResolverFunction · 0.85

Calls 1

registerMessagesFromFileFunction · 0.85

Tested by 1

TestCreateTypeResolverFunction · 0.68