anchor.diff:  %% (function clause) or unexpected exceptions.
   %%
   %% Use the {@link history/1} function to analyze errors.
  --spec validate(Mod:: atom() | list(atom())) -> boolean().
  +-spec validate(Mod:: atom() | [atom()]) -> boolean().
   validate(Mod) when is_atom(Mod) ->
       call(Mod, validate);
   validate(Mod) when is_list(Mod) ->
  
positive.code: %%
  %% Deletes the expectation for the function `Func' with the matching
  %% arity `Arity'.
  -spec delete(Mod:: atom() | list(atom()), Func::atom(), Arity::pos_integer()) ->
      ok.
  delete(Mod, Func, Arity)
    when is_atom(Mod), is_atom(Func), Arity >= 0 ->
  
negative.code: %% with a type, reason and a stack trace.
  -type history() :: [{meck_mfa(), Result::term()}
                      | {meck_mfa(), Class:: exit | error | throw,
                         Reason::term(), Stacktrace::[mfa()]}].
  
  %% Records
  -record(state, {mod :: atom(),
  