
Moox::struct allows you to create cheap struct-like classes for your data using moo.
while similar in spirit to moosex::struct and class::struct, moox::struct has a somewhat different usage pattern. rather than providing you with a "struct" keyword which can be used to define structs, you define all the structs as part of the "use" statement. this means they happen at compile time.
a struct is just an "anonymous" moo class. moox::struct creates this class for you, and installs a lexical alias for it in your namespace. thus your module can create a "point3d" struct, and some other module can too, and they won't interfere with each other. all struct classes inherit from moox::struct.