LCOV - code coverage report
Current view: top level - envoy/common - hashable.h (source / functions) Hit Total Coverage
Test: coverage.dat Lines: 0 1 0.0 %
Date: 2024-01-05 06:35:25 Functions: 0 1 0.0 %

          Line data    Source code
       1             : #pragma once
       2             : 
       3             : #include <cstdint>
       4             : 
       5             : #include "envoy/common/pure.h"
       6             : 
       7             : #include "absl/types/optional.h"
       8             : 
       9             : namespace Envoy {
      10             : 
      11             : /**
      12             :  * Interface for hashable types used in heterogeneous contexts (see, for example, usage in
      13             :  * FilterStateHashMethod).
      14             :  */
      15             : class Hashable {
      16             : public:
      17           0 :   virtual ~Hashable() = default;
      18             : 
      19             :   /**
      20             :    * Request the 64-bit hash for this object.
      21             :    * @return absl::optional<uint64_t> the hash value, or absl::nullopt if a hash could not be
      22             :    * produced for this instance.
      23             :    */
      24             :   virtual absl::optional<uint64_t> hash() const PURE;
      25             : };
      26             : 
      27             : } // namespace Envoy

Generated by: LCOV version 1.15