diff --git a/dataforge-data/src/commonMain/kotlin/hep/dataforge/data/DataFilter.kt b/dataforge-data/src/commonMain/kotlin/hep/dataforge/data/DataFilter.kt index a55aac9d..3770c9a8 100644 --- a/dataforge-data/src/commonMain/kotlin/hep/dataforge/data/DataFilter.kt +++ b/dataforge-data/src/commonMain/kotlin/hep/dataforge/data/DataFilter.kt @@ -54,4 +54,4 @@ fun DataNode.filter(filter: Meta): DataNode = filter(DataFilter. * Filter data using [DataFilter] builder */ fun DataNode.filter(filterBuilder: DataFilter.() -> Unit): DataNode = - filter(DataFilter.build(filterBuilder)) \ No newline at end of file + filter(DataFilter.invoke(filterBuilder)) \ No newline at end of file diff --git a/dataforge-meta/src/commonMain/kotlin/hep/dataforge/descriptors/ItemDescriptor.kt b/dataforge-meta/src/commonMain/kotlin/hep/dataforge/descriptors/ItemDescriptor.kt index 0658dfd8..79c17e47 100644 --- a/dataforge-meta/src/commonMain/kotlin/hep/dataforge/descriptors/ItemDescriptor.kt +++ b/dataforge-meta/src/commonMain/kotlin/hep/dataforge/descriptors/ItemDescriptor.kt @@ -86,7 +86,7 @@ class NodeDescriptor(config: Config) : ItemDescriptor(config) { * Add a value descriptor using block for */ fun value(name: String, block: ValueDescriptor.() -> Unit) { - value(name, ValueDescriptor.build { this.name = name }.apply(block)) + value(name, ValueDescriptor { this.name = name }.apply(block)) } /** @@ -105,7 +105,7 @@ class NodeDescriptor(config: Config) : ItemDescriptor(config) { } fun node(name: String, block: NodeDescriptor.() -> Unit) { - node(name, build { this.name = name }.apply(block)) + node(name, invoke { this.name = name }.apply(block)) } val items: Map get() = nodes + values @@ -205,12 +205,11 @@ class ValueDescriptor(config: Config) : ItemDescriptor(config) { override fun wrap(config: Config): ValueDescriptor = ValueDescriptor(config) - inline fun > enum(name: String) = - build { - this.name = name - type(ValueType.STRING) - this.allowedValues = enumValues().map { Value.of(it.name) } - } + inline fun > enum(name: String) = ValueDescriptor { + this.name = name + type(ValueType.STRING) + this.allowedValues = enumValues().map { Value.of(it.name) } + } // /** // * Build a value descriptor from annotation diff --git a/dataforge-meta/src/commonMain/kotlin/hep/dataforge/meta/Specific.kt b/dataforge-meta/src/commonMain/kotlin/hep/dataforge/meta/Specific.kt index d3ec418a..a4ebffe6 100644 --- a/dataforge-meta/src/commonMain/kotlin/hep/dataforge/meta/Specific.kt +++ b/dataforge-meta/src/commonMain/kotlin/hep/dataforge/meta/Specific.kt @@ -25,9 +25,9 @@ interface Specification { return wrap(config).apply(action) } - fun build(action: T.() -> Unit) = update(Config(), action) + operator fun invoke(action: T.() -> Unit) = update(Config(), action) - fun empty() = build { } + fun empty() = wrap(Config()) /** * Wrap generic configuration producing instance of desired type @@ -67,7 +67,7 @@ fun Specific.spec( key: Name? = null ): MutableMorphDelegate = MutableMorphDelegate(config, key) { spec.wrap(it) } -fun MetaItem<*>.spec(spec: Specification): T? = node?.let { spec.wrap(it)} +fun MetaItem<*>.spec(spec: Specification): T? = node?.let { spec.wrap(it) } @JvmName("configSpec") -fun MetaItem.spec(spec: Specification): T? = node?.let { spec.wrap(it)} \ No newline at end of file +fun MetaItem.spec(spec: Specification): T? = node?.let { spec.wrap(it) } \ No newline at end of file diff --git a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/descriptors/DescriptorTest.kt b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/descriptors/DescriptorTest.kt index 79800ec5..81d25285 100644 --- a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/descriptors/DescriptorTest.kt +++ b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/descriptors/DescriptorTest.kt @@ -6,7 +6,7 @@ import kotlin.test.assertEquals class DescriptorTest { - val descriptor = NodeDescriptor.build { + val descriptor = NodeDescriptor { node("aNode") { info = "A root demo node" value("b") { diff --git a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/MetaDelegateTest.kt b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/MetaDelegateTest.kt index 997a13e3..162a3852 100644 --- a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/MetaDelegateTest.kt +++ b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/MetaDelegateTest.kt @@ -29,7 +29,7 @@ class MetaDelegateTest { testObject.config["myValue"] = "theString" testObject.enumValue = TestEnum.NO - testObject.inner = innerSpec.build { innerValue = "ddd"} + testObject.inner = innerSpec { innerValue = "ddd" } assertEquals("theString", testObject.myValue) assertEquals(TestEnum.NO, testObject.enumValue) diff --git a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/SpecificationTest.kt b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/SpecificationTest.kt index 9098cf18..c11c137b 100644 --- a/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/SpecificationTest.kt +++ b/dataforge-meta/src/commonTest/kotlin/hep/dataforge/meta/SpecificationTest.kt @@ -15,7 +15,7 @@ class SpecificationTest { @Test fun testSpecific(){ - val testObject = TestSpecific.build { + val testObject = TestSpecific { list = emptyList() } assertEquals(emptyList(), testObject.list) diff --git a/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskBuilder.kt b/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskBuilder.kt index 3ff86325..6ae15fa3 100644 --- a/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskBuilder.kt +++ b/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskBuilder.kt @@ -201,7 +201,7 @@ class TaskBuilder(val name: Name, val type: KClass) { * Use DSL to create a descriptor for this task */ fun description(transform: NodeDescriptor.() -> Unit) { - this.descriptor = NodeDescriptor.build(transform) + this.descriptor = NodeDescriptor(transform) } internal fun build(): GenericTask { diff --git a/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskModel.kt b/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskModel.kt index 71a5c006..45b07fca 100644 --- a/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskModel.kt +++ b/dataforge-workspace/src/commonMain/kotlin/hep/dataforge/workspace/TaskModel.kt @@ -105,7 +105,7 @@ fun TaskDependencyContainer.dependsOn( * Add custom data dependency */ fun TaskDependencyContainer.data(action: DataFilter.() -> Unit): DataDependency = - DataDependency(DataFilter.build(action)).also { add(it) } + DataDependency(DataFilter(action)).also { add(it) } /** * User-friendly way to add data dependency