forked from loafle/openapi-generator-original
[OCaml] Fix enum returnType in of_json.mustache for Api Impl (#8631)
* Fix OCaml enum returnType in of_json.mustache * update samples (ocaml, python) Co-authored-by: William Cheng <wing328hk@gmail.com>
This commit is contained in:
parent
bc4bc36de7
commit
ebac91aa32
@ -727,6 +727,12 @@ public class OCamlClientCodegen extends DefaultCodegen implements CodegenConfig
|
|||||||
if ("Yojson.Safe.t".equals(operation.returnBaseType)) {
|
if ("Yojson.Safe.t".equals(operation.returnBaseType)) {
|
||||||
operation.vendorExtensions.put("x-return-free-form-object", true);
|
operation.vendorExtensions.put("x-return-free-form-object", true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (operation.returnType != null && operation.returnType.startsWith("Enums.")) {
|
||||||
|
String returnTypeEnum = operation.returnType.replaceAll(" list$", "");
|
||||||
|
operation.vendorExtensions.put("x-returntype-enum", returnTypeEnum);
|
||||||
|
operation.vendorExtensions.put("x-returntype-is-enum", true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (Map.Entry<String, String> e : enumUniqNames.entrySet()) {
|
for (Map.Entry<String, String> e : enumUniqNames.entrySet()) {
|
||||||
|
@ -1 +1 @@
|
|||||||
{{#isEnum}}JsonSupport.unwrap Enums.{{{datatypeWithEnum}}}_of_yojson{{/isEnum}}{{^isEnum}}{{#returnType}}{{#returnTypeIsPrimitive}}JsonSupport.to_{{{returnBaseType}}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}{{#vendorExtensions.x-model-module}}JsonSupport.unwrap {{{vendorExtensions.x-model-module}}}.of_yojson{{/vendorExtensions.x-model-module}}{{^vendorExtensions.x-model-module}}JsonSupport.unwrap {{{returnBaseType}}}.of_yojson{{/vendorExtensions.x-model-module}}{{/returnTypeIsPrimitive}}{{/returnType}}{{/isEnum}}
|
{{#vendorExtensions.x-returntype-is-enum}}JsonSupport.unwrap {{{vendorExtensions.x-returntype-enum}}}_of_yojson{{/vendorExtensions.x-returntype-is-enum}}{{^vendorExtensions.x-returntype-is-enum}}{{#returnType}}{{#returnTypeIsPrimitive}}JsonSupport.to_{{{returnBaseType}}}{{/returnTypeIsPrimitive}}{{^returnTypeIsPrimitive}}{{#vendorExtensions.x-model-module}}JsonSupport.unwrap {{{vendorExtensions.x-model-module}}}.of_yojson{{/vendorExtensions.x-model-module}}{{^vendorExtensions.x-model-module}}JsonSupport.unwrap {{{returnBaseType}}}.of_yojson{{/vendorExtensions.x-model-module}}{{/returnTypeIsPrimitive}}{{/returnType}}{{/vendorExtensions.x-returntype-is-enum}}
|
19
samples/client/petstore/ocaml/.openapi-generator/FILES
Normal file
19
samples/client/petstore/ocaml/.openapi-generator/FILES
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
README.md
|
||||||
|
dune
|
||||||
|
dune-project
|
||||||
|
petstore_client.opam
|
||||||
|
src/apis/pet_api.ml
|
||||||
|
src/apis/pet_api.mli
|
||||||
|
src/apis/store_api.ml
|
||||||
|
src/apis/store_api.mli
|
||||||
|
src/apis/user_api.ml
|
||||||
|
src/apis/user_api.mli
|
||||||
|
src/models/api_response.ml
|
||||||
|
src/models/category.ml
|
||||||
|
src/models/order.ml
|
||||||
|
src/models/pet.ml
|
||||||
|
src/models/tag.ml
|
||||||
|
src/models/user.ml
|
||||||
|
src/support/enums.ml
|
||||||
|
src/support/jsonSupport.ml
|
||||||
|
src/support/request.ml
|
@ -1 +1 @@
|
|||||||
5.0.0-SNAPSHOT
|
5.0.1-SNAPSHOT
|
Loading…
x
Reference in New Issue
Block a user