TimeInfo.lua 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. class "TimeInfo"
  2. function TimeInfo:__getvar(name)
  3. if name == "seconds" then
  4. return Polycode.TimeInfo_get_seconds(self.__ptr)
  5. elseif name == "minutes" then
  6. return Polycode.TimeInfo_get_minutes(self.__ptr)
  7. elseif name == "hours" then
  8. return Polycode.TimeInfo_get_hours(self.__ptr)
  9. elseif name == "month" then
  10. return Polycode.TimeInfo_get_month(self.__ptr)
  11. elseif name == "monthDay" then
  12. return Polycode.TimeInfo_get_monthDay(self.__ptr)
  13. elseif name == "weekDay" then
  14. return Polycode.TimeInfo_get_weekDay(self.__ptr)
  15. elseif name == "year" then
  16. return Polycode.TimeInfo_get_year(self.__ptr)
  17. elseif name == "yearDay" then
  18. return Polycode.TimeInfo_get_yearDay(self.__ptr)
  19. end
  20. end
  21. function TimeInfo:__setvar(name,value)
  22. if name == "seconds" then
  23. Polycode.TimeInfo_set_seconds(self.__ptr, value)
  24. return true
  25. elseif name == "minutes" then
  26. Polycode.TimeInfo_set_minutes(self.__ptr, value)
  27. return true
  28. elseif name == "hours" then
  29. Polycode.TimeInfo_set_hours(self.__ptr, value)
  30. return true
  31. elseif name == "month" then
  32. Polycode.TimeInfo_set_month(self.__ptr, value)
  33. return true
  34. elseif name == "monthDay" then
  35. Polycode.TimeInfo_set_monthDay(self.__ptr, value)
  36. return true
  37. elseif name == "weekDay" then
  38. Polycode.TimeInfo_set_weekDay(self.__ptr, value)
  39. return true
  40. elseif name == "year" then
  41. Polycode.TimeInfo_set_year(self.__ptr, value)
  42. return true
  43. elseif name == "yearDay" then
  44. Polycode.TimeInfo_set_yearDay(self.__ptr, value)
  45. return true
  46. end
  47. return false
  48. end
  49. function TimeInfo:TimeInfo(...)
  50. local arg = {...}
  51. for k,v in pairs(arg) do
  52. if type(v) == "table" then
  53. if v.__ptr ~= nil then
  54. arg[k] = v.__ptr
  55. end
  56. end
  57. end
  58. if self.__ptr == nil and arg[1] ~= "__skip_ptr__" then
  59. self.__ptr = Polycode.TimeInfo(unpack(arg))
  60. end
  61. end
  62. function TimeInfo:__delete()
  63. if self then Polycode.delete_TimeInfo(self.__ptr) end
  64. end