interface identity (was Re: Proposed new dependency: github.com/juju/errors (and github.com/juju/errgo))
Andrew Wilkins
andrew.wilkins at canonical.com
Wed May 28 01:48:44 UTC 2014
On Wed, May 28, 2014 at 8:47 AM, Tim Penhey <tim.penhey at canonical.com>wrote:
> On 28/05/14 12:43, Nate Finch wrote:
> > This sounds like one of those "if you have to ask this question, you're
> > doing something wrong".
> >
> > Can you give an example of where we need this?
>
> Sure... let's say we have a stack of errors, for simplicity of the
> argument lets say it is a slice of error interface values.
>
> stack []error
>
> * an error is pushed on to the stack initially, we now have one error
> * the same error is pushed (or appended - I don't care)
> * we now have the same error twice
> * I push a new error on the stack, so it looks a little like this
> [err1, err1, err2] right?
>
> Now iterating through this slice I want to know when the error changes.
>
Can you explain where equality fails?
I guess you're thinking you'd like to do something like "x is y" in Python.
There's no such thing as objects in Go, so no universal definition of
identity either.
There seems to be no clean way to do this.
>
> Tim
>
>
>
> --
> Juju-dev mailing list
> Juju-dev at lists.ubuntu.com
> Modify settings or unsubscribe at:
> https://lists.ubuntu.com/mailman/listinfo/juju-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/juju-dev/attachments/20140528/11ea6bb5/attachment.html>
More information about the Juju-dev
mailing list