源战役客户端
No puede seleccionar más de 25 temas Los temas deben comenzar con una letra o número, pueden incluir guiones ('-') y pueden tener hasta 35 caracteres de largo.

78 líneas
2.5 KiB

hace 4 semanas
  1. -- --
  2. -- --------------------------------------------------------------------------------
  3. -- -- FILE: containers.lua
  4. -- -- DESCRIPTION: protoc-gen-lua
  5. -- -- Google's Protocol Buffers project, ported to lua.
  6. -- -- https://code.google.com/p/protoc-gen-lua/
  7. -- --
  8. -- -- Copyright (c) 2010 , 林卓毅 (Zhuoyi Lin) netsnail@gmail.com
  9. -- -- All rights reserved.
  10. -- --
  11. -- -- Use, modification and distribution are subject to the "New BSD License"
  12. -- -- as listed at <url: http://www.opensource.org/licenses/bsd-license.php >.
  13. -- --
  14. -- -- COMPANY: NetEase
  15. -- -- CREATED: 2010年08月02日 16时15分42秒 CST
  16. -- --------------------------------------------------------------------------------
  17. -- --
  18. -- local setmetatable = setmetatable
  19. -- local table = table
  20. -- local rawset = rawset
  21. -- local error = error
  22. -- module "protobuf.containers"
  23. -- local _RCFC_meta = {
  24. -- add = function(self)
  25. -- local value = self._message_descriptor._concrete_class()
  26. -- local listener = self._listener
  27. -- rawset(self, #self + 1, value)
  28. -- value:_SetListener(listener)
  29. -- if listener.dirty == false then
  30. -- listener:Modified()
  31. -- end
  32. -- return value
  33. -- end,
  34. -- remove = function(self, key)
  35. -- local listener = self._listener
  36. -- table.remove(self, key)
  37. -- listener:Modified()
  38. -- end,
  39. -- __newindex = function(self, key, value)
  40. -- LogError("RepeatedCompositeFieldContainer Can't set value directly")
  41. -- end
  42. -- }
  43. -- _RCFC_meta.__index = _RCFC_meta
  44. -- function RepeatedCompositeFieldContainer(listener, message_descriptor)
  45. -- local o = {
  46. -- _listener = listener,
  47. -- _message_descriptor = message_descriptor
  48. -- }
  49. -- return setmetatable(o, _RCFC_meta)
  50. -- end
  51. -- local _RSFC_meta = {
  52. -- append = function(self, value)
  53. -- self._type_checker(value)
  54. -- rawset(self, #self + 1, value)
  55. -- self._listener:Modified()
  56. -- end,
  57. -- remove = function(self, key)
  58. -- table.remove(self, key)
  59. -- self._listener:Modified()
  60. -- end,
  61. -- __newindex = function(self, key, value)
  62. -- LogError("RepeatedCompositeFieldContainer Can't set value directly")
  63. -- end
  64. -- }
  65. -- _RSFC_meta.__index = _RSFC_meta
  66. -- function RepeatedScalarFieldContainer(listener, type_checker)
  67. -- local o = {}
  68. -- o._listener = listener
  69. -- o._type_checker = type_checker
  70. -- return setmetatable(o, _RSFC_meta)
  71. -- end