[][src]Enum lcov::report::MergeError

pub enum MergeError {
    UnmatchedFunctionLine,
    UnmatchedChecksum,
}

All possible errors that can occur when merging LCOV records.

Variants

UnmatchedFunctionLine

An error indicating that start line of functions are not same.

This error occurs when merging not compatible LCOV tracefiles.

Examples

use lcov::{Reader, Report};
use lcov::report::MergeError;
let input1 = "\
TN:test_name
SF:foo.c
FN:3,foo
end_of_record
";
let input2 = "\
TN:test_name
SF:foo.c
FN:4,foo
end_of_record
";
let mut report1 = Report::from_reader(Reader::new(input1.as_bytes()))?;
let report2 = Report::from_reader(Reader::new(input2.as_bytes()))?;
assert_matches!(report1.merge(report2),
                Err(MergeError::UnmatchedFunctionLine));
UnmatchedChecksum

An error indicating that checksum of lines are not same.

This error occurs when merging not compatible LCOV tracefiles.

Examples

use lcov::{Reader, Report};
use lcov::report::MergeError;
let input1 = "\
TN:test_name
SF:foo.c
DA:4,1,valid_checksum
end_of_record
";
let input2 = "\
TN:test_name
SF:foo.c
DA:4,4,invalid_checksum
end_of_record
";
let mut report1 = Report::from_reader(Reader::new(input1.as_bytes()))?;
let report2 = Report::from_reader(Reader::new(input2.as_bytes()))?;
assert_matches!(report1.merge(report2),
                Err(MergeError::UnmatchedChecksum));

Trait Implementations

impl Clone for MergeError[src]

fn clone_from(&mut self, source: &Self)
1.0.0
[src]

Performs copy-assignment from source. Read more

impl Eq for MergeError[src]

impl Copy for MergeError[src]

impl PartialEq<MergeError> for MergeError[src]

#[must_use]
fn ne(&self, other: &Rhs) -> bool
1.0.0
[src]

This method tests for !=.

impl Display for MergeError[src]

impl Debug for MergeError[src]

impl Fail for MergeError[src]

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 
[src]

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>[src]

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more

Auto Trait Implementations

impl Send for MergeError

impl Sync for MergeError

Blanket Implementations

impl<T> From for T[src]

impl<T, U> Into for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom for T where
    U: Into<T>, 
[src]

type Error = !

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> Borrow for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> BorrowMut for T where
    T: ?Sized
[src]

impl<T, U> TryInto for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

🔬 This is a nightly-only experimental API. (try_from)

The type returned in the event of a conversion error.

impl<T> AsFail for T where
    T: Fail
[src]

impl<E> Fail for E where
    E: 'static + Error + Send + Sync
[src]

fn name(&self) -> Option<&str>[src]

Returns the "name" of the error. Read more

fn cause(&self) -> Option<&(dyn Fail + 'static)>[src]

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more

fn backtrace(&self) -> Option<&Backtrace>[src]

Returns a reference to the Backtrace carried by this failure, if it carries one. Read more

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 
[src]

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>[src]

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more