diff options
author | Martin Odersky <odersky@gmail.com> | 2014-08-19 14:24:08 +0200 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2014-08-19 14:24:08 +0200 |
commit | 5b941d2be550540e1bf2df78edfdbca35aaf8e68 (patch) | |
tree | 41beb1540c3d9fb01210a900083447e598dcf570 /src/dotty/tools | |
parent | f0519c9e384ab1e0c8379caa08ed73a7347cf59c (diff) | |
download | dotty-5b941d2be550540e1bf2df78edfdbca35aaf8e68.tar.gz dotty-5b941d2be550540e1bf2df78edfdbca35aaf8e68.tar.bz2 dotty-5b941d2be550540e1bf2df78edfdbca35aaf8e68.zip |
Fixed class doc comment for ElimByName
Diffstat (limited to 'src/dotty/tools')
-rw-r--r-- | src/dotty/tools/dotc/transform/ElimByName.scala | 18 |
1 files changed, 4 insertions, 14 deletions
diff --git a/src/dotty/tools/dotc/transform/ElimByName.scala b/src/dotty/tools/dotc/transform/ElimByName.scala index 59befe955..5925ffa72 100644 --- a/src/dotty/tools/dotc/transform/ElimByName.scala +++ b/src/dotty/tools/dotc/transform/ElimByName.scala @@ -12,28 +12,18 @@ import SymUtils._ import core.StdNames.nme import ast.Trees._ -/** This phase eliminates ExprTypes `=> T` and PolyTypes over value types `[X]T`. - * They are expressed in terms of nullary method or function types. More precisely: +/** This phase eliminates ExprTypes `=> T` and replaces them by + * nullary function types. More precisely: * - * For types: + * For parameter types: * - * => T ==> () => T if T is the type of a parameter - * ==> ()T otherwise - * [X]T ==> [X]()T - * - * For definitions: - * - * def f: R ==> def f(): R - * def f[X]: R ==> def f[X](): R - * (x: => T) ==> (x: () => T) + * => T ==> () => T * * For terms: * - * f ==> f() if f had type => T and is not a parameter * x ==> x.apply() if x is a parameter that had type => T * e.apply() ==> e if e.apply() is an argument to a call-by-name parameter * expr ==> () => expr if other expr is an argument to a call-by-name parameter - * */ class ElimByName extends MiniPhaseTransform with InfoTransformer { thisTransformer => import ast.tpd._ |