未验证 提交 d81de72e 编写于 作者: 梦境迷离's avatar 梦境迷离 提交者: GitHub

make force set false (#182)

Co-authored-by: 梦境迷离's avatar梦境迷离 <dreamylost@outlook.com>
上级 1f4df5f7
...@@ -47,7 +47,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) { ...@@ -47,7 +47,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) {
c.enclosingPosition, c.enclosingPosition,
s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " + s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " +
s"Expanded macro start ######\n" + resTree.toString() + "\n###### Expanded macro end ######\n", s"Expanded macro start ######\n" + resTree.toString() + "\n###### Expanded macro end ######\n",
force = force force = false
) )
/** /**
...@@ -76,7 +76,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) { ...@@ -76,7 +76,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) {
c.info( c.info(
c.enclosingPosition, c.enclosingPosition,
s"Method: `${name.decodedName.toString}` in enclosing class: `$getEnclosingClassName`.", s"Method: `${name.decodedName.toString}` in enclosing class: `$getEnclosingClassName`.",
force = true force = false
) )
buffer.append(name) buffer.append(name)
doFind(tail) doFind(tail)
......
...@@ -122,7 +122,7 @@ object CacheEvictMacro { ...@@ -122,7 +122,7 @@ object CacheEvictMacro {
DefDef(mods, name, tparams, vparamss, tpt, newBody) DefDef(mods, name, tparams, vparamss, tpt, newBody)
} }
printTree(force = true, resTree) printTree(force = false, resTree)
c.Expr[Any](resTree) c.Expr[Any](resTree)
} }
} }
......
...@@ -77,7 +77,7 @@ object CacheableMacro { ...@@ -77,7 +77,7 @@ object CacheableMacro {
DefDef(mods, name, tparams, vparamss, tpt, newBody) DefDef(mods, name, tparams, vparamss, tpt, newBody)
} }
printTree(force = true, resTree) printTree(force = false, resTree)
c.Expr[Any](resTree) c.Expr[Any](resTree)
} }
} }
......
...@@ -36,6 +36,8 @@ abstract class AbstractMacroProcessor(val c: blackbox.Context) { ...@@ -36,6 +36,8 @@ abstract class AbstractMacroProcessor(val c: blackbox.Context) {
import c.universe._ import c.universe._
protected val packageName = q"_root_.org.bitlap.csv.core"
/** /**
* Get the list of case class constructor parameters and return the column index, column name, and parameter type that zip as a `List[((Int, Tree), Type)]`. * Get the list of case class constructor parameters and return the column index, column name, and parameter type that zip as a `List[((Int, Tree), Type)]`.
* *
...@@ -80,12 +82,12 @@ abstract class AbstractMacroProcessor(val c: blackbox.Context) { ...@@ -80,12 +82,12 @@ abstract class AbstractMacroProcessor(val c: blackbox.Context) {
* @tparam T * @tparam T
* @return * @return
*/ */
def printTree[T: c.WeakTypeTag](force: Boolean, resTree: c.Tree): c.Expr[T] = { def exprPrintTree[T: c.WeakTypeTag](force: Boolean, resTree: c.Tree): c.Expr[T] = {
c.info( c.info(
c.enclosingPosition, c.enclosingPosition,
s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} Expanded macro start ######\n" + resTree s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} Expanded macro start ######\n" + resTree
.toString() + "\n###### Expanded macro end ######\n", .toString() + "\n###### Expanded macro end ######\n",
force = force force = false
) )
c.Expr[T](resTree) c.Expr[T](resTree)
} }
......
...@@ -34,8 +34,6 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac ...@@ -34,8 +34,6 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac
import c.universe._ import c.universe._
private val packageName = q"_root_.org.bitlap.csv.core"
private val annoBuilderPrefix = "_AnonCsvableBuilder$" private val annoBuilderPrefix = "_AnonCsvableBuilder$"
private val builderFunctionPrefix = "_CsvableBuilderFunction$" private val builderFunctionPrefix = "_CsvableBuilderFunction$"
...@@ -48,7 +46,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac ...@@ -48,7 +46,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac
val builderId = getBuilderId(annoBuilderPrefix) val builderId = getBuilderId(annoBuilderPrefix)
MacroCache.builderFunctionTrees.getOrElseUpdate(builderId, mutable.Map.empty).update(termName.toString, value) MacroCache.builderFunctionTrees.getOrElseUpdate(builderId, mutable.Map.empty).update(termName.toString, value)
val tree = q"new ${c.prefix.actualType}" val tree = q"new ${c.prefix.actualType}"
printTree[CsvableBuilder[T]](force = true, tree) exprPrintTree[CsvableBuilder[T]](force = false, tree)
} }
def applyImpl[T: c.WeakTypeTag]: c.Expr[CsvableBuilder[T]] = def applyImpl[T: c.WeakTypeTag]: c.Expr[CsvableBuilder[T]] =
...@@ -68,7 +66,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac ...@@ -68,7 +66,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac
class $className extends $packageName.CsvableBuilder[$caseClazzName] class $className extends $packageName.CsvableBuilder[$caseClazzName]
new $className new $className
""" """
printTree[CsvableBuilder[T]](force = true, tree) exprPrintTree[CsvableBuilder[T]](force = false, tree)
} }
private def deriveCsvableImpl[T: c.WeakTypeTag](t: c.Expr[T], columnSeparator: c.Expr[Char]): c.Expr[Csvable[T]] = { private def deriveCsvableImpl[T: c.WeakTypeTag](t: c.Expr[T], columnSeparator: c.Expr[Char]): c.Expr[Csvable[T]] = {
...@@ -90,7 +88,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac ...@@ -90,7 +88,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac
..${CsvableBody[T](columnSeparator, innerVarTermName, customTrees)} ..${CsvableBody[T](columnSeparator, innerVarTermName, customTrees)}
} }
""" """
printTree[Csvable[T]](force = false, tree) exprPrintTree[Csvable[T]](force = false, tree)
} }
private def CsvableBody[T: c.WeakTypeTag]( private def CsvableBody[T: c.WeakTypeTag](
...@@ -152,7 +150,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac ...@@ -152,7 +150,7 @@ class DeriveCsvableBuilder(override val c: whitebox.Context) extends AbstractMac
if (null == fields) "" else $fieldsToString.mkString($separator.toString) if (null == fields) "" else $fieldsToString.mkString($separator.toString)
} }
""" """
printTree[Csvable[T]](force = false, tree) exprPrintTree[Csvable[T]](force = false, tree)
} }
} }
...@@ -34,9 +34,8 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa ...@@ -34,9 +34,8 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa
import c.universe._ import c.universe._
private val packageName = q"_root_.org.bitlap.csv.core"
private val annoBuilderPrefix = "_AnonScalableBuilder$" private val annoBuilderPrefix = "_AnonScalableBuilder$"
private val builderFunctionPrefix = "_ScalableBuilderFunction$" private val builderFunctionPrefix = "_ScalableBuilderFunction$"
def setFieldImpl[T: c.WeakTypeTag, SF: c.WeakTypeTag]( def setFieldImpl[T: c.WeakTypeTag, SF: c.WeakTypeTag](
...@@ -47,7 +46,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa ...@@ -47,7 +46,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa
val builderId = getBuilderId(annoBuilderPrefix) val builderId = getBuilderId(annoBuilderPrefix)
MacroCache.builderFunctionTrees.getOrElseUpdate(builderId, mutable.Map.empty).update(termName.toString, value) MacroCache.builderFunctionTrees.getOrElseUpdate(builderId, mutable.Map.empty).update(termName.toString, value)
val tree = q"new ${c.prefix.actualType}" val tree = q"new ${c.prefix.actualType}"
printTree[ScalableBuilder[T]](force = true, tree) exprPrintTree[ScalableBuilder[T]](force = false, tree)
} }
def applyImpl[T: c.WeakTypeTag]: c.Expr[ScalableBuilder[T]] = def applyImpl[T: c.WeakTypeTag]: c.Expr[ScalableBuilder[T]] =
...@@ -67,7 +66,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa ...@@ -67,7 +66,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa
class $className extends $packageName.ScalableBuilder[$caseClazzName] class $className extends $packageName.ScalableBuilder[$caseClazzName]
new $className new $className
""" """
printTree[ScalableBuilder[T]](force = true, tree) exprPrintTree[ScalableBuilder[T]](force = false, tree)
} }
...@@ -94,7 +93,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa ...@@ -94,7 +93,7 @@ class DeriveScalableBuilder(override val c: whitebox.Context) extends AbstractMa
..${scalableBody[T](clazzName, innerVarTermName)} ..${scalableBody[T](clazzName, innerVarTermName)}
} }
""" """
printTree[Scalable[T]](force = true, tree) exprPrintTree[Scalable[T]](force = false, tree)
} }
private def scalableBody[T: c.WeakTypeTag]( private def scalableBody[T: c.WeakTypeTag](
......
...@@ -34,8 +34,6 @@ object DeriveToCaseClass { ...@@ -34,8 +34,6 @@ object DeriveToCaseClass {
class Macro(override val c: blackbox.Context) extends AbstractMacroProcessor(c) { class Macro(override val c: blackbox.Context) extends AbstractMacroProcessor(c) {
import c.universe._ import c.universe._
private val packageName = q"_root_.org.bitlap.csv.core"
def macroImpl[T <: Product: c.WeakTypeTag]( def macroImpl[T <: Product: c.WeakTypeTag](
line: c.Expr[String], line: c.Expr[String],
columnSeparator: c.Expr[Char] columnSeparator: c.Expr[Char]
...@@ -77,7 +75,7 @@ object DeriveToCaseClass { ...@@ -77,7 +75,7 @@ object DeriveToCaseClass {
lazy val $innerVarTermName = _root_.org.bitlap.csv.core.StringUtils.splitColumns($line, $columnSeparator) lazy val $innerVarTermName = _root_.org.bitlap.csv.core.StringUtils.splitColumns($line, $columnSeparator)
Option(${TermName(clazzName.decodedName.toString)}(..${fields(innerVarTermName)})) Option(${TermName(clazzName.decodedName.toString)}(..${fields(innerVarTermName)}))
""" """
printTree[T](force = false, tree) exprPrintTree[T](force = false, tree)
}.asInstanceOf[c.Expr[Option[T]]] }.asInstanceOf[c.Expr[Option[T]]]
......
...@@ -35,8 +35,6 @@ object DeriveToString { ...@@ -35,8 +35,6 @@ object DeriveToString {
import c.universe._ import c.universe._
private val packageName = q"_root_.org.bitlap.csv.core"
def macroImpl[T: c.WeakTypeTag](t: c.Expr[T], columnSeparator: c.Expr[Char]): c.Expr[String] = { def macroImpl[T: c.WeakTypeTag](t: c.Expr[T], columnSeparator: c.Expr[Char]): c.Expr[String] = {
val (names, indexTypes) = super.checkCaseClassZip[T] val (names, indexTypes) = super.checkCaseClassZip[T]
val clazzName = c.weakTypeOf[T].typeSymbol.name val clazzName = c.weakTypeOf[T].typeSymbol.name
...@@ -62,7 +60,7 @@ object DeriveToString { ...@@ -62,7 +60,7 @@ object DeriveToString {
val fields = ${TermName(clazzName.decodedName.toString)}.unapply($innerVarTermName).orNull val fields = ${TermName(clazzName.decodedName.toString)}.unapply($innerVarTermName).orNull
if (null == fields) "" else $fieldsToString.mkString($separator.toString) if (null == fields) "" else $fieldsToString.mkString($separator.toString)
""" """
printTree[String](force = false, tree) exprPrintTree[String](force = false, tree)
} }
} }
......
...@@ -49,7 +49,7 @@ object DeriveCsvConverter { ...@@ -49,7 +49,7 @@ object DeriveCsvConverter {
override def toCsvString(t: $typeName): String = org.bitlap.csv.core.macros.DeriveToString[$typeName](t, $columnSeparator) override def toCsvString(t: $typeName): String = org.bitlap.csv.core.macros.DeriveToString[$typeName](t, $columnSeparator)
} }
""" """
printTree[CC](force = true, tree) exprPrintTree[CC](force = false, tree)
} }
def macroImpl[CC: c.WeakTypeTag]: c.Expr[CC] = { def macroImpl[CC: c.WeakTypeTag]: c.Expr[CC] = {
......
...@@ -55,7 +55,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) { ...@@ -55,7 +55,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) {
def impl(annottees: Expr[Any]*): Expr[Any] = { def impl(annottees: Expr[Any]*): Expr[Any] = {
checkAnnottees(annottees) checkAnnottees(annottees)
val resTree = collectCustomExpr(annottees)(createCustomExpr) val resTree = collectCustomExpr(annottees)(createCustomExpr)
printTree(force = true, resTree.tree) printTree(force = false, resTree.tree)
resTree resTree
} }
...@@ -86,7 +86,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) { ...@@ -86,7 +86,7 @@ abstract class AbstractMacroProcessor(val c: whitebox.Context) {
c.enclosingPosition, c.enclosingPosition,
s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " + s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " +
s"Expanded macro start ######\n" + resTree.toString() + "\n###### Expanded macro end ######\n", s"Expanded macro start ######\n" + resTree.toString() + "\n###### Expanded macro end ######\n",
force = force force = false
) )
/** /**
......
...@@ -170,7 +170,7 @@ object elapsedMacro { ...@@ -170,7 +170,7 @@ object elapsedMacro {
getNewMethod(defDef) getNewMethod(defDef)
} }
} }
printTree(force = true, resTree) printTree(force = false, resTree)
c.Expr[Any](resTree) c.Expr[Any](resTree)
} }
} }
......
...@@ -97,7 +97,7 @@ object logMacro { ...@@ -97,7 +97,7 @@ object logMacro {
// see https://docs.scala-lang.org/overviews/macros/annotations.html // see https://docs.scala-lang.org/overviews/macros/annotations.html
} }
printTree(force = true, resTree) printTree(force = false, resTree)
c.Expr[Any](resTree) c.Expr[Any](resTree)
} }
} }
......
...@@ -195,7 +195,7 @@ object ProcessorCreatorMacro { ...@@ -195,7 +195,7 @@ object ProcessorCreatorMacro {
c.enclosingPosition, c.enclosingPosition,
s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " + s"\n###### Time: ${ZonedDateTime.now().format(DateTimeFormatter.ISO_ZONED_DATE_TIME)} " +
s"Expanded macro start ######\n" + ret.toString() + "\n###### Expanded macro end ######\n", s"Expanded macro start ######\n" + ret.toString() + "\n###### Expanded macro end ######\n",
force = true force = false
) )
ret ret
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册