From 0c551f00f43c1675aca3adbff7567f47432c66f6 Mon Sep 17 00:00:00 2001 From: Dmitry Petrashko Date: Fri, 12 Sep 2014 12:02:40 +0200 Subject: More convinient appliedToNone --- src/dotty/tools/dotc/ast/tpd.scala | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/dotty/tools/dotc/ast/tpd.scala b/src/dotty/tools/dotc/ast/tpd.scala index 7cb697c46..101631738 100644 --- a/src/dotty/tools/dotc/ast/tpd.scala +++ b/src/dotty/tools/dotc/ast/tpd.scala @@ -497,7 +497,7 @@ object tpd extends Trees.Instance[Type] with TypedTreeInfo { Try(tree: Tree)(expr, handler, finalizer) } - implicit class TreeOps[ThisTree <: tpd.Tree](val tree: ThisTree) extends AnyVal { + implicit class TreeOps[ThisTree <: tpd.Tree](val tree: ThisTree)/* extends AnyVal*/ { def isValue(implicit ctx: Context): Boolean = tree.isTerm && tree.tpe.widen.isValueType @@ -554,7 +554,13 @@ object tpd extends Trees.Instance[Type] with TypedTreeInfo { def appliedToArgss(argss: List[List[Tree]])(implicit ctx: Context): Tree = ((tree: Tree) /: argss)(Apply(_, _)) - def appliedToNone(implicit ctx: Context): Apply = appliedToArgs(Nil) + def appliedToNone(implicit ctx: Context): Tree = { + tree.tpe.widen match { + case fntpe: MethodType => appliedToArgs(Nil) + case _ => tree + } + } + def appliedToType(targ: Type)(implicit ctx: Context): Tree = appliedToTypes(targ :: Nil) -- cgit v1.2.3