Skip to content

Commit d993dc2

Browse files
authored
Merge pull request #907 from modelix/fix/metaproperties-regression
fix(model-api-gen): fix generated code not compiling if conceptProper…
2 parents a37f715 + 8696d04 commit d993dc2

File tree

2 files changed

+3
-2
lines changed

2 files changed

+3
-2
lines changed

model-api-gen/src/main/kotlin/org/modelix/metamodel/generator/internal/ConceptFileGenerator.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ internal class ConceptFileGenerator(
4343
) : NameConfigBasedGenerator(nameConfig), FileGenerator {
4444

4545
override fun generateFileSpec(): FileSpec {
46-
val conceptObject = ConceptObjectGenerator(concept, nameConfig).generate()
46+
val conceptObject = ConceptObjectGenerator(concept, nameConfig, conceptPropertiesInterfaceName).generate()
4747
val conceptWrapperInterface = ConceptWrapperInterfaceGenerator(
4848
concept,
4949
nameConfig,

model-api-gen/src/main/kotlin/org/modelix/metamodel/generator/internal/ConceptObjectGenerator.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@ import kotlin.reflect.KClass
5353
internal class ConceptObjectGenerator(
5454
private val concept: ProcessedConcept,
5555
override val nameConfig: NameConfig,
56+
private val conceptPropertiesInterfaceName: String?,
5657
private val alwaysUseNonNullableProperties: Boolean = true,
5758
) : NameConfigBasedGenerator(nameConfig) {
5859

@@ -101,7 +102,7 @@ internal class ConceptObjectGenerator(
101102
}
102103

103104
private fun TypeSpec.Builder.addConceptPropertiesGetter() {
104-
if (concept.metaProperties.isEmpty()) return
105+
if (conceptPropertiesInterfaceName == null || concept.metaProperties.isEmpty()) return
105106

106107
val getConceptPropertyFun = FunSpec.builder(GeneratedConcept<*, *>::getConceptProperty.name).runBuild {
107108
val paramName = GeneratedConcept<*, *>::getConceptProperty.parameters.first().name ?: "name"

0 commit comments

Comments
 (0)