1
+ /**{ {#description} }
2
+ * { {{description} }}{ {/description} }
3
+ { {#allVars} }
4
+ * @property { {{name} }}{ {#description} } { {description} }{ {/description} }
5
+ { {/allVars} }
6
+ */
7
+ @JsonClass(generateAdapter = true)
8
+ { {#hasChildren} }
9
+ @Polymorphic(
10
+ discriminatorField = "{ {discriminator} }",
11
+ discriminatedValues = [{ {#children} }"{ {title} }"{ {^-last} }, { {/-last} }{ {/children} }],
12
+ discriminatedClasses = [{ {#children} }{ {classname} }::class{ {^-last} }, { {/-last} }{ {/children} }]
13
+ )
14
+ { {/hasChildren} }
15
+ open class { {classname} }(
16
+ { {#requiredVars} }
17
+ { {> data_class_req_var} }{ {^-last} },
18
+ { {/-last} }{ {/requiredVars} }{ {#hasRequired} }{ {#hasOptional} },
19
+ { {/hasOptional} }{ {/hasRequired} }{ {#optionalVars} }{ {> data_class_opt_var} }{ {^-last} },
20
+ { {/-last} }{ {/optionalVars} }
21
+ ) {
22
+ override fun toString(): String {
23
+ return " {{classname}}(" +{{#allVars} }
24
+ "{ {name} }=${ {name} }{ {^-last} },{ {/-last} }" +{ {/allVars} }
25
+ ")"
26
+ }
27
+
28
+ override fun hashCode(): Int {
29
+ var resultHashCode = 0{{#allVars} }
30
+ resultHashCode = resultHashCode * 31 + this.{ {name} }.optimisticHashCode(){ {/allVars} }
31
+ return resultHashCode
32
+ }
33
+
34
+ override fun equals(other: Any?): Boolean {
35
+ return if (this === other) {
36
+ true
37
+ } else {
38
+ other is {{classname} }{ {#allVars} } &&
39
+ this.{ {name} } == other.{ {name} }{ {/allVars} }
40
+ }
41
+ }
42
+
43
+ { {#vars} }
44
+ { {#isEnum} }
45
+ /**{ {#description} }
46
+ * { {{description} }}{ {/description} }
47
+ * Values:{ {#allowableValues} } { {#enumVars} }{ {&name} }{ {^-last} }, { {/-last} }{ {/enumVars} }{ {/allowableValues} }
48
+ */
49
+ @JsonClass(generateAdapter = false)
50
+ enum class { {enumName} }(val value: { {complexType} }) {
51
+ {{#allowableValues} }{ {#enumVars} } @Json(name = { {{value} }}) { {&name} }({ {{value} }}){ {^-last} },{ {/-last} }{ {{newline} }}{ {/enumVars} }{ {/allowableValues} } }
52
+ { {/isEnum} }{ {/vars} }}
0 commit comments