LCOV - code coverage report
Current view: top level - src - error.rs (source / functions) Coverage Total Hit
Test: lief.lcov Lines: 18.2 % 22 4
Test Date: 2024-10-27:00:00:00 Functions: 12.5 % 8 1

            Line data    Source code
       1              : use std::fmt;
       2              : 
       3            0 : #[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
       4              : pub enum Error {
       5              :     ReadError,
       6              :     NotFound,
       7              :     NotImplemented,
       8              :     NotSupported,
       9              :     Corrupted,
      10              :     ConversionError,
      11              :     ReadOutOfBound,
      12              :     ASN1BadTag,
      13              :     FileError,
      14              :     FileFormatError,
      15              :     ParsingError,
      16              :     BuildError,
      17              :     DataTooLarge,
      18              :     RequireExtendedVersion,
      19              :     Unknown(u32),
      20              : }
      21              : 
      22              : impl From<u32> for Error {
      23            8 :     fn from(value: u32) -> Self {
      24            8 :         match value {
      25            0 :             0x00000001 => Error::ReadError,
      26            0 :             0x00000002 => Error::NotFound,
      27            0 :             0x00000003 => Error::NotImplemented,
      28            0 :             0x00000004 => Error::NotSupported,
      29            0 :             0x00000005 => Error::Corrupted,
      30            8 :             0x00000006 => Error::ConversionError,
      31            0 :             0x00000007 => Error::ReadOutOfBound,
      32            0 :             0x00000008 => Error::ASN1BadTag,
      33            0 :             0x00000009 => Error::FileError,
      34            0 :             0x0000000a => Error::FileFormatError,
      35            0 :             0x0000000b => Error::ParsingError,
      36            0 :             0x0000000c => Error::BuildError,
      37            0 :             0x0000000d => Error::DataTooLarge,
      38            0 :             0x0000000e => Error::RequireExtendedVersion,
      39            0 :             _ => Error::Unknown(value),
      40              : 
      41              :         }
      42            8 :     }
      43              : }
      44              : 
      45              : impl fmt::Display for Error {
      46            0 :     fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
      47            0 :         write!(f, "LIEF Error Occurred!")
      48            0 :     }
      49              : }
        

Generated by: LCOV version 2.1-1