* wiggle-generate: paramaterize library on module path to runtime This change makes no functional difference to users who only use the wiggle crate. Add a parameter to the `Names` constructor that determines the module that runtime components (e.g. GuestPtr, GuestError etc) of wiggle come from. For `wiggle` users this is just `quote!(wiggle)`, but other libraries which consume wiggle-generate may wrap and re-export wiggle under some other path, and not want their consumers to have to know about the wiggle dependency, e.g. `quote!(my_crate::some_path::wiggle)`. * wiggle-generate,macro: move more logic into macro better for code reuse elsewhere
wiggle-generate
This is a library crate that implements all of the component parts of
the wiggle proc-macro crate.
Code lives in a separate non-proc-macro crate so that it can be reused in
other settings, e.g. the lucet-wiggle crate.
Code generated by this crate should not have any references to a particular WebAssembly runtime or engine. It should instead expose traits that may be implemented by an engine. Today, it is consumed by both Lucet and Wasmtime.