Hi,
a trivial typo, 4.4.6. Double Examples:
x70 x00 x00 # 0.0
x70 x80 x00 # -32768.0
x70 x7f xff # 32767.0
Should be x6a.
---
Also, byte in Java is signed, we all know that. It took me some time
(doh) to remember that in C#, it is NOT. Could you just please put in
some notes in the spec on the places where this actually is important..
please. Perhaps just include a definition of byte in it somewhere.
As an example.. it's not 100 clear to me what is really going on in the
Java code as compared to the spec..
case DOUBLE_BYTE:
return (byte) (_offset < _length ?
_buffer[_offset++] : read());
.. when (as I understand it) read() is implemented to return an unsigned
int version of the byte:
return _buffer[_offset++] & 0xff;
Am I thinking something wrong here .. or ? Isn't that wrong? I'm not
exactly the master of bit-conversions these days :-)
I'm struggling a little bit with understand the whole compact double
part of the spec and since you are using stuff like
Float.intBitsToFloat() and Double.longBitsToDouble() I have nothing to
compare notes with.. That's all new Java for me .. and I have to do it
in C# :-P
Are there any other implementations of v2 that already implemented
compact encoding out there?
Other than that, most of it is really straightforward. Good work on the
spec.
Cheers,
/Niclas
_______________________________________________
hessian-interest mailing list
[email protected]
http://maillist.caucho.com/mailman/listinfo/hessian-interest