44 path : /en-US/lab/smt
55---
66
7- <img align =" right " width =" 20% " height =" 30% " src =" /images/smt.png " alt =" https://bitlap.org " />
8-
97# smt
108
119| Project Stage | CI | Codecov |
4139## common
4240
4341- Some very general tool classes.
42+ - ` Transformer ` Transform the case class` From ` 's object to the case class` To ` 's object.
43+ - ` Transformable ` Automatically generate instances of` Transformer ` .
44+ - Two ways to map fields:
45+ - 1.use` Transformer ` and define` Transformer ` implicitly in the companion object of the case class.
46+ - 2.use` Transformable ` 's` mapField ` method directly.
4447``` scala
4548" org.bitlap" %% " smt-common" % " <VERSION>" // since 0.6.0
4649```
8689
8790## cacheable
8891
89- A cache like Spring ` @Cacheable ` and ` @cacheEvict ` based on zio. It has no implementation of storage media.
92+ A cache like Spring ` @Cacheable ` and ` @cacheEvict ` based on zio. It has no implementation of storage media. (not support Scala2.11.x)
9093
9194- ` @cacheable ` / ` Cache.apply `
9295- ` @cacheEvict ` / ` Cache.evict `
9396
9497``` scala
95- // cache API, include dependencies: zio, zio-streams, zio-logging
96- " org.bitlap" %% " smt-cacheable" % " <VERSION>" // not support Scala2.11.x
98+ " org.bitlap" %% " smt-cacheable" % " <VERSION>"
9799```
98100
99101## cacheable-redis
100102
101- A distributed cache based on zio and zio-redis. It needs ` cacheable ` module.
103+ A distributed cache based on zio and zio-redis. It depends on ` cacheable ` module.
102104
103- > TODO Not unavailable, no distributed lock
105+ > TODO Not unavailable
104106
105107``` scala
106- // distributed cache, include dependencies: zio-redis, config, zio-schema, zio-schema-json, optional (zio-schema-derivation for case class)
107- // dependsOn `smt-cacheable`
108108" org.bitlap" %% " smt-cacheable-redis" % " <VERSION>" // not support Scala2.11.x
109109```
110110
111111## cacheable-caffeine
112112
113- A memory cache based on zio and caffeine. It needs ` cacheable ` module.
114-
113+ A memory cache based on zio and caffeine. It needs ` cacheable ` module. (not support Scala2.11.x)
115114``` scala
116- // local cache, include dependencies: config, caffeine
117- // dependsOn `smt-cacheable`
118- " org.bitlap" %% " smt-cacheable-caffeine" % " <VERSION>" // not support Scala2.11.x
115+ " org.bitlap" %% " smt-cacheable-caffeine" % " <VERSION>"
119116```
120117
121118The artefacts have been uploaded to Maven Central. Importing the library into your build system (e.g gradle, sbt), is not enough. You need to follow an extra step.
@@ -135,14 +132,22 @@ If that doesn't work, google for alternatives.
135132In version scala` 2.13.x ` , the functionality of macro paradise has been included in the scala compiler directly. However,
136133you must still enable the compiler flag ` -Ymacro-annotations ` .
137134
138- [ Stage ] : https://img.shields.io/badge/Project%20Stage-Experimental-yellow.svg
135+ # Especially thanks
136+
137+ <img src =" https://resources.jetbrains.com/storage/products/company/brand/logos/IntelliJ_IDEA.svg " alt =" IntelliJ IDEA logo. " >
138+
139+
140+ This project is developed using JetBrains IDEA.
141+ Thanks to JetBrains for providing me with a free license, which is a strong support for me.
142+
143+ [ Stage ] : https://img.shields.io/badge/Project%20Stage-Development-yellowgreen.svg
139144[ Badge-CI ] : https://github.com/bitlap/smt/actions/workflows/ScalaCI.yml/badge.svg
140- [ Badge-Scaladex ] : https://index.scala-lang.org/bitlap/smt/smt-csv-derive /latest.svg?platform=jvm
145+ [ Badge-Scaladex ] : https://index.scala-lang.org/bitlap/smt/smt-annotations /latest.svg?platform=jvm
141146[ Badge-Jetbrains ] : https://img.shields.io/jetbrains/plugin/v/17202-scala-macro-tools
142147[ Badge-Codecov ] : https://codecov.io/gh/bitlap/smt/branch/master/graph/badge.svg?token=IA596YRTOT
143148[ Badge-Snapshots ] : https://img.shields.io/nexus/s/org.bitlap/smt-annotations_2.13?server=https%3A%2F%2Fs01.oss.sonatype.org
144149
145150[ Link-Jetbrains ] : https://plugins.jetbrains.com/plugin/17202-scala-macro-tools
146151[ Link-Codecov ] : https://codecov.io/gh/bitlap/smt
147- [ Link-Scaladex ] : https://index.scala-lang.org/bitlap/smt/smt-csv-derive
152+ [ Link-Scaladex ] : https://index.scala-lang.org/bitlap/smt/smt-annotations
148153[ Link-Snapshots ] : https://s01.oss.sonatype.org/content/repositories/snapshots/org/bitlap/
0 commit comments