On Nov 24, 2007, at 12:19 PM, Ben Hood wrote: > Hi, > > The length of a list is defined as > > 'l' b3 b2 b2 b0 > x6e int > > which seems to be a bit ambiguous. > > Is it supposed to read: > > 'l' following by a 4 byte integer value
Yes. > or > > 'l' following by the encoding for an int, including any compact int > encoding, e.g. > > 'l' b0 > 'l' b1 b0 > 'l' b3 b2 b1 b0 No, because there's no way to tell how many bytes to read in the second case. The 'l' encoding is for Hessian 1.0 compatibility. > > ? > > Does the same apply for the x6e shorthand, i.e. > > x6e b0 > x6e b1 b0 > x6e b3 b2 b1 b0 x6e is followed by the int production. So a length of 0 would be x6e x90 Or x6e I(cap-i) b3 b2 b1 b0 The int production encodes the number of bytes. Hessian 1.0 compatibilty makes the lists a bit messy. > or is just > > x6e b0 > > allowed? That's not actually allowed, since you'd need to use encodings like x80-xbf. -- Scott > > Thx, > > Ben > > > _______________________________________________ > hessian-interest mailing list > [email protected] > http://maillist.caucho.com/mailman/listinfo/hessian-interest _______________________________________________ hessian-interest mailing list [email protected] http://maillist.caucho.com/mailman/listinfo/hessian-interest
