Dependencies
Adding to a project
The currently available modules are:
| Module | Description |
|---|---|
| core | The core of the language, this is the main interpreter |
| jackson | The Jackson JSON bindings, the default JSON parser |
| circe | Circe JSON bindings, the default JSON parser for scala projects |
| jsoup | HTML cleaning function and XML bindings |
| utils | Extra utilities, such as document classifiers |
Modules that extend IDML to add extra functions are:
| Module | Description |
|---|---|
| jsoup | adds XHML/HTML functions like stripTags and parseXml/parseHtml |
| jackson/circe | add parseJson and other associated functions for working with JSON at runtime |
| hashing | Adds all mainstream hash functions |
| geo | Geo functions like ISO code lookups |
Other modules you probably don’t need to depend on directly are:
| Module | Description |
|---|---|
| bench | microbenchmarks for finding performance regressions |
| repl | the REPL |
| tool | the IDML tool |
| idmltutor | the interactive tutor |
| test | the test framework |
| idmldoc | the documentation framework |
| idmltest-plugin | the sbt plugin for idmltest |
| idmldoc-plugin | the sbt plugin for idmldoc |
| lang | the core parser |
| datanodes | the core JSON AST |
| execnodes | the evaluation AST |
Maven
The artifacts are published to Maven so you can include it in your project with the following configuration:
<dependency>
<groupId>io.idml</groupId>
<artifactId>idml-core_2.12</artifactId>
<version>2.0.xxx</version>
</dependency>
SBT
The dependency can also be managed with SBT:
libraryDependencies += "io.idml" %% "idml-core" % "2.0.xxx"