fn add_input(
        &mut self,
        state: &mut S,
        executor: &mut E,
        manager: &mut EM,
        input: I,
    ) -> Result<usize, Error> {
        let exit_kind = self.execute_input(state, executor, manager, &input)?;
        let observers = executor.observers();
        // Always consider this to be "interesting"

        // Not a solution
        self.objective_mut().discard_metadata(state, &input)?;

        // Add the input to the main corpus
        let mut testcase = Testcase::new(input.clone());
        self.feedback_mut().append_metadata(state, &mut testcase)?;
        let idx = state.corpus_mut().add(testcase)?;
        self.scheduler_mut().on_add(state, idx)?;

        let observers_buf = if manager.configuration() == EventConfig::AlwaysUnique {
            None
        } else {
            Some(manager.serialize_observers(observers)?)
        };
        manager.fire(
            state,
            Event::NewTestcase {
                input,
                observers_buf,
                exit_kind,
                corpus_size: state.corpus().count(),
                client_config: manager.configuration(),
                time: current_time(),
                executions: *state.executions(),
            },
        )?;
        Ok(idx)
    }
/// Adds an input, even if it's not conisered `interesting` by any of the executors
Adds an input, even if it's not conisered `interesting` by any of the executors
Adds an input even if it ' s not conisered ` interesting ` by any of the executors
fn add_input(
        &mut self,
        state: &mut S,
        executor: &mut E,
        manager: &mut EM,
        input: I,
    ) -> Result<usize, Error> {
        let exit_kind = self.execute_input(state, executor, manager, &input)?;
        let observers = executor.observers();
        // Always consider this to be "interesting"
        // Not a solution
        self.objective_mut().discard_metadata(state, &input)?;
        // Add the input to the main corpus
        let mut testcase = Testcase::new(input.clone());
        self.feedback_mut().append_metadata(state, &mut testcase)?;
        let idx = state.corpus_mut().add(testcase)?;
        self.scheduler_mut().on_add(state, idx)?;
        let observers_buf = if manager.configuration() == EventConfig::AlwaysUnique {
            None
        } else {
            Some(manager.serialize_observers(observers)?)
        };
        manager.fire(
            state,
            Event::NewTestcase {
                input,
                observers_buf,
                exit_kind,
                corpus_size: state.corpus().count(),
                client_config: manager.configuration(),
                time: current_time(),
                executions: *state.executions(),
            },
        )?;
        Ok(idx)
    }
fn add_input ( & mut self , state : & mut S , executor : & mut E , manager : & mut EM , input : I , ) -> Result < usize , Error > { let exit_kind = self . execute_input ( state , executor , manager , & input ) ? ; let observers = executor . observers ( ) ; // Always consider this to be "interesting" // Not a solution self . objective_mut ( ) . discard_metadata ( state , & input ) ? ; // Add the input to the main corpus let mut testcase = Testcase :: new ( input . clone ( ) ) ; self . feedback_mut ( ) . append_metadata ( state , & mut testcase ) ? ; let idx = state . corpus_mut ( ) . add ( testcase ) ? ; self . scheduler_mut ( ) . on_add ( state , idx ) ? ; let observers_buf = if manager . configuration ( ) == EventConfig :: AlwaysUnique { None } else { Some ( manager . serialize_observers ( observers ) ? ) } ; manager . fire ( state , Event :: NewTestcase { input , observers_buf , exit_kind , corpus_size : state . corpus ( ) . count ( ) , client_config : manager . configuration ( ) , time : current_time ( ) , executions : * state . executions ( ) , } , ) ? ; Ok ( idx ) }
Adds an input, even if it's not conisered `interesting` by any of the executors
Adds an input even if it ' s not conisered ` interesting ` by any of the executors
&mut self
state
&mut S
executor
&mut E
manager
&mut EM
input
I
&mut self
state
&mut S
executor
&mut E
manager
&mut EM
input
I