LCOV - code coverage report
Current view: top level - source/common/protobuf - visitor_helper.cc (source / functions) Hit Total Coverage
Test: coverage.dat Lines: 16 16 100.0 %
Date: 2024-01-05 06:35:25 Functions: 3 3 100.0 %

          Line data    Source code
       1             : #include "source/common/protobuf/visitor_helper.h"
       2             : 
       3             : namespace Envoy {
       4             : namespace ProtobufMessage {
       5             : namespace Helper {
       6             : 
       7         687 : std::unique_ptr<Protobuf::Message> typeUrlToMessage(absl::string_view type_url) {
       8         687 :   const absl::string_view inner_type_name = TypeUtil::typeUrlToDescriptorFullName(type_url);
       9         687 :   const Protobuf::Descriptor* inner_descriptor =
      10         687 :       Protobuf::DescriptorPool::generated_pool()->FindMessageTypeByName(
      11         687 :           std::string(inner_type_name));
      12         687 :   if (inner_descriptor == nullptr) {
      13          11 :     return nullptr;
      14          11 :   }
      15         676 :   auto* inner_message_prototype =
      16         676 :       Protobuf::MessageFactory::generated_factory()->GetPrototype(inner_descriptor);
      17         676 :   return std::unique_ptr<Protobuf::Message>(inner_message_prototype->New());
      18         687 : }
      19             : 
      20             : ScopedMessageParents::ScopedMessageParents(std::vector<const Protobuf::Message*>& parents,
      21             :                                            const Protobuf::Message& message)
      22      857264 :     : parents_(parents) {
      23      857264 :   parents_.push_back(&message);
      24      857264 : }
      25             : 
      26      857264 : ScopedMessageParents::~ScopedMessageParents() { parents_.pop_back(); }
      27             : 
      28             : } // namespace Helper
      29             : } // namespace ProtobufMessage
      30             : } // namespace Envoy

Generated by: LCOV version 1.15