README.md
    https://dreamylost.cn

    scala-macro-tools

    Build codecov Maven Central Version

    Motivation

    Learn Scala macro and abstract syntax tree.

    The project is currently experimental

    中文说明 | English

    Environment

    • It is compiled in Java 8, 11
    • It is compiled in Scala 2.11.x ~ 2.13.x

    Features

    • @toString
    • @json
    • @builder
    • @synchronized
    • @log
    • @apply
    • @constructor
    • @equalsAndHashCode
    • @jacksonEnum
    • @elapsed

    The intellij plugin named Scala-Macro-Tools in marketplace.

    Document

    https://bitlap.org/lab/smt

    How to use

    Add library dependency

    "io.github.jxnu-liguobin" %% "scala-macro-tools" % "<VERSION>"

    The 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.

    Scala 2.11 Scala 2.12 Scala 2.13
    Import macro paradise plugin Import macro paradise plugin Enable compiler flag -Ymacro-annotations required
    addCompilerPlugin("org.scalamacros" % "paradise_<your-scala-version>" % "<plugin-version>")

    Where <your-scala-version> must be the full scala version. For example 2.12.13, and not 2.12.

    If that doesn't work, google for alternatives.

    In version scala2.13.x, the functionality of macro paradise has been included in the scala compiler directly. However, you must still enable the compiler flag -Ymacro-annotations.

    项目简介

    基于Scala宏编程实现的类似Lombok的工具库。

    🚀 Github 镜像仓库 🚀

    原项目 https://github.com/jxnu-liguobin/scala-macro-tools

    发行版本 8

    v0.3.1

    全部发行版

    贡献者 5

    梦境迷离 @qq_34446485
    S Scala Steward @Scala Steward
    I IceMimosa @IceMimosa
    梦境迷离 @梦境迷离
    I IceMimosa @IceMimosa

    开发语言

    • Scala 99.6 %
    • HTML 0.4 %