-
Notifications
You must be signed in to change notification settings - Fork 84
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support deriving from module type declarations. #94
Conversation
I noticed this breaks ppx_type_conv, since it registers
It's documented as a private interface to be changed, so it may be a matter of synchronizing the releases. |
@@ -19,10 +19,14 @@ type deriver = { | |||
type_declaration list -> structure; | |||
type_ext_str : options:(string * expression) list -> path:string list -> | |||
type_extension -> structure; | |||
modtype_str : options:(string * expression) list -> path:string list -> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
module_type_decl
@diml How do we properly do releases in lockstep? |
I suppose instead of passing |
Thanks! |
I pushed a version with modtype_* replaced by module_type_decl_*, I assume this is what you had in mind? |
Yep--thanks! |
ppx_type_conv 113.33.03 has the change I described |
Ok--I will release a new ppx_deriving soon. |
Thanks to both of you! (Not quite ready for a release myself.) |
I could use an extension of the deriving interface to allow deriving definitions from module types. The derived definitions would typically be a structure of the given signature or a functor producing or depending on it, though it could be regular functions involving first-class modules of the signature. My current use-case is to generate the RPC client and server parts for a Thrift service.