// Code generated by MockGen. DO NOT EDIT.
// Source: bugreport.go
//
// Generated by this command:
//
//	mockgen -typed -aux_files faux=faux/faux.go -destination bugreport_mock.go -package typed -source=bugreport.go Example
//

// Package typed is a generated GoMock package.
package typed

import (
	reflect "reflect"

	gomock "go.uber.org/mock/gomock"
	faux "go.uber.org/mock/mockgen/internal/tests/typed/faux"
)

// MockSource is a mock of Source interface.
type MockSource struct {
	ctrl     *gomock.Controller
	recorder *MockSourceMockRecorder
	isgomock struct{}
}

// MockSourceMockRecorder is the mock recorder for MockSource.
type MockSourceMockRecorder struct {
	mock *MockSource
}

// NewMockSource creates a new mock instance.
func NewMockSource(ctrl *gomock.Controller) *MockSource {
	mock := &MockSource{ctrl: ctrl}
	mock.recorder = &MockSourceMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockSource) EXPECT() *MockSourceMockRecorder {
	return m.recorder
}

// Error mocks base method.
func (m *MockSource) Error() string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Error")
	ret0, _ := ret[0].(string)
	return ret0
}

// Error indicates an expected call of Error.
func (mr *MockSourceMockRecorder) Error() *MockSourceErrorCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Error", reflect.TypeOf((*MockSource)(nil).Error))
	return &MockSourceErrorCall{Call: call}
}

// MockSourceErrorCall wrap *gomock.Call
type MockSourceErrorCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSourceErrorCall) Return(arg0 string) *MockSourceErrorCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSourceErrorCall) Do(f func() string) *MockSourceErrorCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSourceErrorCall) DoAndReturn(f func() string) *MockSourceErrorCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// Method mocks base method.
func (m *MockSource) Method() faux.Return {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Method")
	ret0, _ := ret[0].(faux.Return)
	return ret0
}

// Method indicates an expected call of Method.
func (mr *MockSourceMockRecorder) Method() *MockSourceMethodCall {
	mr.mock.ctrl.T.Helper()
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Method", reflect.TypeOf((*MockSource)(nil).Method))
	return &MockSourceMethodCall{Call: call}
}

// MockSourceMethodCall wrap *gomock.Call
type MockSourceMethodCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockSourceMethodCall) Return(arg0 faux.Return) *MockSourceMethodCall {
	c.Call = c.Call.Return(arg0)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockSourceMethodCall) Do(f func() faux.Return) *MockSourceMethodCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockSourceMethodCall) DoAndReturn(f func() faux.Return) *MockSourceMethodCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
