code: func (e *MarshalError) Error() string {
  	switch e.ErrorCode {
  	case ErrIO:
  		return fmt.Sprintf("xdr:%s: %s - wrote: '%v'", e.Func,
  			e.Description, e.Value)
  	case ErrBadEnumValue:
  		return fmt.Sprintf("xdr:%s: %s - value: '%v'", e.Func,
  			e.Description, e.Value)
  	}
  	return fmt.Sprintf("xdr:%s: %s", e.Func, e.Description)
  }
docs: // Error satisfies the error interface and prints human-readable errors.