{"id":"secondnewtonlaw/tabletobuffer","name":"tabletobuffer","scope":"secondnewtonlaw","platform":"roblox","description":"A utility to convert tables into buffers","version":"0.1.5","latest":"0.1.5","versions":["0.1.0","0.1.1","0.1.2","0.1.3","0.1.4","0.1.5"],"license":"MIT","licenseRating":"safe","licenseCaveats":[],"licenseVerified":true,"dependencies":{},"integrity":"4f73aa425353c28f4202e49e41489baea73e69f1a482e1753f0797a0202e8a40","likes":0,"downloads":0,"install":"forest install secondnewtonlaw/tabletobuffer","url":"https://forest.dev/p/roblox/secondnewtonlaw/tabletobuffer","files":"https://api.forest.dev/ai/package/roblox/secondnewtonlaw/tabletobuffer/files","readme":"# Table To Buffer\r\n\r\nTable to buffer is a project that aims to create a serializer for _most_ primitive data types inside of Luau (`userdata` is not serialized due to it having to be practically manually done for each instance).\r\n\r\nAll of the serializers and deserializers were manually written, no automatic tool was involved, which means they can be improved, so if there is any bug or space optimization, reach out using issues or make a pull request.\r\n\r\n### Currently serializable primitives:\r\n    - boolean\r\n    - number (Automatically serializable as a float64 if not given a specific size)\r\n    - string (May be compressesd using lzw when benefitial)\r\n    - vector (Vector3's on Roblox)\r\n    - table\r\n    - buffer\r\n\r\nThe serializer building can be done automatically given a table. This project ONLY supports tables that are of type `[string]: number | boolean | string | table | vector (Vector3) | buffer`.\r\n\r\nThe library follows a Builder pattern to create Deserializers and Serializers. Think of it as something like a Table to JSON, but instead of JSON, is optimized buffers. The order in which the functions for the builder are called matters, as they dictate how big the buffer will be and the position of the data.\r\n\r\nParsing `userdata` value types is not currently on the roadmap, and it may be treated as a side project if it every comes around.\r\n\r\n## How to install?\r\n- Download the `.rbxm` file on the latest release of this project.\r\n- Using wally:\r\n    - Add `tabletobuffer = \"secondnewtonlaw/tabletobuffer@0.1.5\"`\r\n\r\n## [How to use this?](https://secondnewtonlaw.github.io/TableToBuffer/)\r\n\r\n","readmeTruncated":false}