@@ -11,12 +11,6 @@ import NameKinds.DefaultGetterName
1111import Annotations .Annotation
1212
1313object MainProxies {
14-
15- /** Generate proxy classes for @main functions and @myMain functions where myMain <:< MainAnnotation */
16- def proxies (stats : List [tpd.Tree ])(using Context ): List [untpd.Tree ] = {
17- mainAnnotationProxies(stats) ++ mainProxies(stats)
18- }
19-
2014 /** Generate proxy classes for @main functions.
2115 * A function like
2216 *
@@ -35,7 +29,7 @@ object MainProxies {
3529 * catch case err: ParseError => showError(err)
3630 * }
3731 */
38- private def mainProxies (stats : List [tpd.Tree ])(using Context ): List [untpd.Tree ] = {
32+ def mainProxiesOld (stats : List [tpd.Tree ])(using Context ): List [untpd.Tree ] = {
3933 import tpd ._
4034 def mainMethods (stats : List [Tree ]): List [Symbol ] = stats.flatMap {
4135 case stat : DefDef if stat.symbol.hasAnnotation(defn.MainAnnot ) =>
@@ -45,11 +39,11 @@ object MainProxies {
4539 case _ =>
4640 Nil
4741 }
48- mainMethods(stats).flatMap(mainProxy )
42+ mainMethods(stats).flatMap(mainProxyOld )
4943 }
5044
5145 import untpd ._
52- private def mainProxy (mainFun : Symbol )(using Context ): List [TypeDef ] = {
46+ def mainProxyOld (mainFun : Symbol )(using Context ): List [TypeDef ] = {
5347 val mainAnnotSpan = mainFun.getAnnotation(defn.MainAnnot ).get.tree.span
5448 def pos = mainFun.sourcePos
5549 val argsRef = Ident (nme.args)
@@ -171,7 +165,7 @@ object MainProxies {
171165 * }
172166 * }
173167 */
174- private def mainAnnotationProxies (stats : List [tpd.Tree ])(using Context ): List [untpd.Tree ] = {
168+ def mainProxies (stats : List [tpd.Tree ])(using Context ): List [untpd.Tree ] = {
175169 import tpd ._
176170
177171 /**
@@ -194,12 +188,12 @@ object MainProxies {
194188 def mainMethods (scope : Tree , stats : List [Tree ]): List [(Symbol , ParameterAnnotationss , DefaultValueSymbols , Option [Comment ])] = stats.flatMap {
195189 case stat : DefDef =>
196190 val sym = stat.symbol
197- sym.annotations.filter(_.matches(defn.MainAnnotationClass )) match {
191+ sym.annotations.filter(_.matches(defn.MainAnnot )) match {
198192 case Nil =>
199193 Nil
200194 case _ :: Nil =>
201195 val paramAnnotations = stat.paramss.flatMap(_.map(
202- valdef => valdef.symbol.annotations.filter(_.matches(defn.MainAnnotationParameterAnnotation ))
196+ valdef => valdef.symbol.annotations.filter(_.matches(defn.MainAnnotParameterAnnotation ))
203197 ))
204198 (sym, paramAnnotations.toVector, defaultValueSymbols(scope, sym), stat.rawComment) :: Nil
205199 case mainAnnot :: others =>
@@ -213,7 +207,7 @@ object MainProxies {
213207 }
214208
215209 // Assuming that the top-level object was already generated, all main methods will have a scope
216- mainMethods(EmptyTree , stats).flatMap(mainAnnotationProxy )
210+ mainMethods(EmptyTree , stats).flatMap(mainProxy )
217211 }
218212
219213 private def mainAnnotationProxy (mainFun : Symbol , paramAnnotations : ParameterAnnotationss , defaultValueSymbols : DefaultValueSymbols , docComment : Option [Comment ])(using Context ): Option [TypeDef ] = {
@@ -367,7 +361,7 @@ object MainProxies {
367361 case tree => super .transform(tree)
368362 }
369363 val annots = mainFun.annotations
370- .filterNot(_.matches(defn.MainAnnotationClass ))
364+ .filterNot(_.matches(defn.MainAnnot ))
371365 .map(annot => insertTypeSplices.transform(annot.tree))
372366 val mainMeth = DefDef (nme.main, (mainArg :: Nil ) :: Nil , TypeTree (defn.UnitType ), body)
373367 .withFlags(JavaStatic )
0 commit comments