Skip to content

Commit 47680b2

Browse files
committed
OCaml: fix recursive types
1 parent 4f5a664 commit 47680b2

3 files changed

Lines changed: 2 additions & 5 deletions

File tree

modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/OCamlClientCodegen.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -251,9 +251,6 @@ public ModelsMap postProcessModels(ModelsMap objs) {
251251
.anyMatch(prop -> prop.isSelfReference);
252252

253253
if (hasSelfRef) {
254-
// Add vendor extension for template
255-
cm.getVendorExtensions().put("x-ocaml-has-self-reference", true);
256-
257254
// Collect names of self-referencing properties
258255
Set<String> selfRefPropNames = cm.allVars.stream()
259256
.filter(p -> p.isSelfReference)

modules/openapi-generator/src/main/resources/ocaml/model-record.mustache

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
type {{#vendorExtensions.x-ocaml-has-self-reference}}rec {{/vendorExtensions.x-ocaml-has-self-reference}}t = {
1+
type t = {
22
{{#vars}}
33
{{#isEnum}}
44
{{{name}}}: {{^isMap}}Enums.{{/isMap}}{{{datatypeWithEnum}}}

samples/client/petstore/ocaml-recursion-test/src/models/foo.ml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99

1010

11-
type rec t = {
11+
type t = {
1212
foo: t
1313

1414
option [@default None]

0 commit comments

Comments
 (0)