msgpcode.go 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. package msgpcode
  2. var (
  3. PosFixedNumHigh byte = 0x7f
  4. NegFixedNumLow byte = 0xe0
  5. Nil byte = 0xc0
  6. False byte = 0xc2
  7. True byte = 0xc3
  8. Float byte = 0xca
  9. Double byte = 0xcb
  10. Uint8 byte = 0xcc
  11. Uint16 byte = 0xcd
  12. Uint32 byte = 0xce
  13. Uint64 byte = 0xcf
  14. Int8 byte = 0xd0
  15. Int16 byte = 0xd1
  16. Int32 byte = 0xd2
  17. Int64 byte = 0xd3
  18. FixedStrLow byte = 0xa0
  19. FixedStrHigh byte = 0xbf
  20. FixedStrMask byte = 0x1f
  21. Str8 byte = 0xd9
  22. Str16 byte = 0xda
  23. Str32 byte = 0xdb
  24. Bin8 byte = 0xc4
  25. Bin16 byte = 0xc5
  26. Bin32 byte = 0xc6
  27. FixedArrayLow byte = 0x90
  28. FixedArrayHigh byte = 0x9f
  29. FixedArrayMask byte = 0xf
  30. Array16 byte = 0xdc
  31. Array32 byte = 0xdd
  32. FixedMapLow byte = 0x80
  33. FixedMapHigh byte = 0x8f
  34. FixedMapMask byte = 0xf
  35. Map16 byte = 0xde
  36. Map32 byte = 0xdf
  37. FixExt1 byte = 0xd4
  38. FixExt2 byte = 0xd5
  39. FixExt4 byte = 0xd6
  40. FixExt8 byte = 0xd7
  41. FixExt16 byte = 0xd8
  42. Ext8 byte = 0xc7
  43. Ext16 byte = 0xc8
  44. Ext32 byte = 0xc9
  45. )
  46. func IsFixedNum(c byte) bool {
  47. return c <= PosFixedNumHigh || c >= NegFixedNumLow
  48. }
  49. func IsFixedMap(c byte) bool {
  50. return c >= FixedMapLow && c <= FixedMapHigh
  51. }
  52. func IsFixedArray(c byte) bool {
  53. return c >= FixedArrayLow && c <= FixedArrayHigh
  54. }
  55. func IsFixedString(c byte) bool {
  56. return c >= FixedStrLow && c <= FixedStrHigh
  57. }
  58. func IsString(c byte) bool {
  59. return IsFixedString(c) || c == Str8 || c == Str16 || c == Str32
  60. }
  61. func IsBin(c byte) bool {
  62. return c == Bin8 || c == Bin16 || c == Bin32
  63. }
  64. func IsFixedExt(c byte) bool {
  65. return c >= FixExt1 && c <= FixExt16
  66. }
  67. func IsExt(c byte) bool {
  68. return IsFixedExt(c) || c == Ext8 || c == Ext16 || c == Ext32
  69. }