In der LuaJIT-FFI-Bibliothek können Strukturen initialized from tables sein. Gibt es eine einfache Möglichkeit, das Gegenteil zu tun? Offensichtlich für jede spezifische Struktur ist es einfach, eine Funktion zu schreiben, die es in eine Tabelle umwandelt, aber es erfordert, die Felder zu wiederholen. Leistung ist mir nicht besonders wichtig, dies ist nur zum Debuggen gedacht.Konvertieren von LuaJIT-FFI-Strukturen in Tabellen
2
A
Antwort
3
Sie können die Lua-Bibliothek ffi-reflect verwenden, die ffi.typeinfo verwendet, um die internen ctype-Informationen zu lesen, um die Liste der Feldnamen der Struktur zu erhalten.
local ffi = require "ffi"
local reflect = require "reflect"
ffi.cdef[[typedef struct test{int x, y;}test;]]
local cd = ffi.new('test', 1, 2)
function totab(struct)
local t = {}
for refct in reflect.typeof(struct):members() do
t[refct.name] = struct[refct.name]
end
return t
end
local ret = totab(cd)
assert(ret.x == 1 and ret.y == 2)
Verwandte Themen
- 1. Konvertieren von Ansichten in Tabellen mithilfe von SSIS
- 2. XSD in relationale SQL-Tabellen konvertieren
- 3. Google Text & Tabellen in Jekyll Markdown konvertieren
- 4. Konvertieren von .sql Tabellen-Datei in Excel einfügen
- 5. Konvertieren von MySQL-Tabellen von latin1 zu utf8
- 6. Flink Tabellen-API DataSet Datastream zu konvertieren
- 7. (Wie) Ist es möglich, Tabellen in fremde Tabellen in Postgres zu konvertieren?
- 8. Wie 3-Tabellen in 3 Spalten konvertieren, aber eine Tabelle
- 9. Blatt in API-Skriptbefehle für Google Tabellen konvertieren?
- 10. Konvertieren von SQL in Doctrine in Symfony
- 11. Konvertieren von nmake in
- 12. Erweitern von Tabellen in SQL
- 13. Hinzufügen von Tabellen in lua
- 14. Erstellen von Tabellen in Java
- 15. Anfügen von Tabellen in Access
- 16. Konvertieren von Text in varchar (MAX)
- 17. Makro zum Exportieren von MS Word-Tabellen in Excel-Tabellen
- 18. Lua Garbage Collection von Tabellen, verschachtelte Tabellen
- 19. Konvertieren von Int in Varchar-Datentyp in MySQL
- 20. Abfragen von Tabellen mit der Zählung von anderen Tabellen
- 21. Konvertieren von System.types in SMO.DataTypes
- 22. Konvertieren von HTML in RDF
- 23. Konvertieren von Monatsnamen in Ganzzahl
- 24. Konvertieren von NSArray in NSMutableArray
- 25. Konvertieren von Strings in Variablenreferenzen
- 26. Konvertieren von JSON in NSArray
- 27. Konvertieren von Audio in Text
- 28. Konvertieren von Daten in Datenrahmen
- 29. Konvertieren von Bild in C#
- 30. Konvertieren von Sequenzen in Codons