test2.lua 563 B

123456789101112131415161718192021222324252627282930313233
  1. local protobuf = require "protobuf"
  2. addr = io.open("../../build/addressbook.pb","rb")
  3. buffer = addr:read "*a"
  4. addr:close()
  5. protobuf.register(buffer)
  6. local person = {
  7. name = "Alice",
  8. id = 123,
  9. phone = {
  10. { number = "123456789" , type = "MOBILE" },
  11. { number = "87654321" , type = "HOME" },
  12. }
  13. }
  14. local buffer = protobuf.encode("tutorial.Person", person)
  15. local t = protobuf.decode("tutorial.Person", buffer)
  16. for k,v in pairs(t) do
  17. if type(k) == "string" then
  18. print(k,v)
  19. end
  20. end
  21. print(t.phone[2].type)
  22. for k,v in pairs(t.phone[1]) do
  23. print(k,v)
  24. end