Nice find in regards to that link
On Apr 4, 2014 9:21 AM, "Freedom Dumlao" <notifications@github.com> wrote:

> In hmacauth.go:
>
> >  		!ab.Timestamp.IsZero()
> >  }
> >
> > +func (ab *authBits) SetTimestamp(isoTime string) (err error) {
> > +	ab.Timestamp, err = time.Parse(time.RFC3339, isoTime)
> > +	if err == nil {
> > +		ab.TimestampString = isoTime
> > +	}
> > +	return
> > +}
> > +
> >  func HMACAuth(options Options) middleware {
>
> So it looks like in Go a string instance is 2 words long where the first
> word is a pointer to the actual string data and the second word is the
> length of the string data. This works since strings are immutable, so when
> you pass a string and it gets copied it's really just copying 2 words worth
> of data and not the entire string. Pretty neat way of handling it and means
> that passing strings around is even cheaper than passing slices (which it
> looks like are 3 words long).
>
> http://research.swtch.com/godata
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/apiguy/go-hmacauth/pull/1/files#r11301759>
> .
>