package meep

type ErrInvalidParam struct {
	TraitAutodescribing
	TraitTraceable
	Param  string
	Reason string
}

type ErrNotYetImplemented struct {
	TraitAutodescribing
	TraitTraceable
}

type ErrProgrammer struct {
	TraitAutodescribing
	TraitTraceable
	TraitCausable
}

package meep

type ErrInvalidParam struct {
	TraitAutodescribing
	TraitTraceable
	Param  string
	Reason string
}

type ErrNotYetImplemented struct {
	TraitAutodescribing
	TraitTraceable
}

type ErrProgrammer struct {
	Msg string
	TraitAutodescribing
	TraitTraceable
	TraitCausable
}

Add message field to ErrProgrammer.
Add message field to ErrProgrammer.

It seems when raising these there *may* be an existing error, which I would like to continue to raise up unmolested, whilst also tagging it with a brief message about *why* this is semantically a programmer error.  Having a field for that message instead of having to double-duty the cause field to slip a message in is much better.

Signed-off-by: Eric Myhre <2346ad27d7568ba9896f1b7da6b5991251debdf2@exultant.us>
