Skip to content

Thurgood is a Rust (de)serializer for Ruby's marshal format.

License

Notifications You must be signed in to change notification settings

Bindernews/thurgood

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thurgood   Latest Version

Thurgood is a Rust library that implements (de)serialization for Ruby's Marshal format.

The primary use-case of Thurgood is to load some data, manipulate parts of it, then serailize the modified data. This includes game saves, stored Rails data, or anything else stored using Marshal.dump. Because of this, Thurgood places a high priority on the ability to deserialize and re-serialize Marshal streams with as little information-loss as possible. In many cases Thurgood can deserialize and re-serialize a stream and produce the same output, byte for byte (see the documentation for exceptions).

Thurgood also provides a convenient method to convert an RbAny into a serde_json::Value making it easier to explore or visualize unfamiliar data. Unfortunately this conversion is one-way, and can fail. See the documentation for more information.

Status

Thurgood is currently in alpha. It's been successfully tested on some use-cases, but needs a more extensive suite of unit tests. Furthermore the separation of thurgood::rc and thurgood::arc is subject to change, as is the use of reference-counting internally.

About

Thurgood is a Rust (de)serializer for Ruby's marshal format.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages