Features#
Tip
Check out the features below with one of our samples. These features are guaranteed to work with them out of the box.
Declarative DSL in IDE#
Android Studio#
This video demonstrates the support for the Declarative Configuration Language (DCL) available in Android Studio: syntax highlighting, semantic analysis and code completion. Thanks to the strictness of DCL, the IDE assistance is exempt of noise. Code completion only suggests the properties and nested blocks available in the current scope.
This video demonstrates the enhanced support for DCL in Android Studio, covering enum properties and named domain object containers.
The same level of support should be expected in IntelliJ IDEA.
Visual Studio Code#
This video demonstrates the support for the Declarative Configuration Language (DCL) available in Visual Studio Code: syntax highlighting, semantic analysis and code completion. Thanks to the strictness of DCL, the IDE assistance is exempt of noise. Code completion only suggests the properties and nested blocks available in the current scope. Moreover, semantic mutations, or refactorings, are available directly in the editor.
Eclipse IDE#
This video demonstrates the support for the Declarative Configuration Language (DCL) available in the Eclipse IDE: syntax highlighting, semantic analysis and code completion. Thanks to the strictness of DCL, the IDE assistance is exempt of noise. Code completion only suggests the properties and nested blocks available in the current scope.
Two-Way Tooling#
This video shows the Gradle Client application and demonstrates the use of the Declarative Configuration Language (DCL) tooling libraries to inspect the model of a configured build. The configuration of projects is overlayed on top of the defaults declared in settings. Highlighting configured values works in a two-way manner ; from the DCL files to the configured model and vice-versa.
Mutations#
This video shows the Gradle Client application and demonstrates the use of the mutation framework from the Declarative Configuration Language (DCL) tooling libraries.
Available mutations, or refactorings, are shown on the configured model pane where they are applicable.
For example, the Add a dependency mutation is available on the dependencies {}
block.
When a mutation is triggered, the Gradle Client user interface asks for the parameters of the mutation and the mutation is applied, changing the DCL files.
This demonstration also shows that mutations can be applied on DCL files that contain errors.