Commit graph

9 commits

Author SHA1 Message Date
theduke
81ce7780fa Codegen: implement description for custom derives + improve tests
Description attribute was available, but not actually used for derive
Object, InputObject and enum and the fields on input object.

Description is now properly set in each of those cases.

Also, tests for all three derives now properly verify the meta
information (name and description) for the derived GraphQLType.
2017-08-06 19:30:26 +02:00
theduke
6c45fba9bd Fix some warnings in codegen + tests. 2017-08-06 19:30:26 +02:00
theduke
6c7dc0493d Rename custom derive modules for consistency.
codegen/enums -> codegen/derive_enum
codegen/input_objects -> codegen/derive_input_object
tests/enums -> tests/derive_enum
tests/input_objects -> tests/derive_input_object
2017-08-06 19:30:26 +02:00
theduke
e835a5e019 Codegen: Add custom derive for GraphQLObject
This adds a simple derive for objects that implements GraphQLType for
structs which do not require any manual resolvers.

This could be extended in the future to provide a custom resolver
function via an attribute.

Also adds an integration test.
2017-08-06 19:30:26 +02:00
theduke
c27d2c7a23 Make variant name for derived enums upper case by default 2017-07-12 21:51:24 +02:00
theduke
1312c6a026 Implement derive for input objects 2017-07-12 21:51:24 +02:00
theduke
e42228e2d5 Duplicating to_camel_case in codegen 2017-07-12 21:51:24 +02:00
theduke
2bcfc315ad Use more descriptive variant variable names for enum deriving 2017-07-12 21:51:24 +02:00
theduke
d33db983de Add juniper_codegen crate.
This crate will contain multiple custom_derive implementations.

For now, only enum is supported.
2017-07-12 21:51:24 +02:00