diff options
author | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2013-09-12 10:26:46 -0700 |
---|---|---|
committer | Grzegorz Kossakowski <grzegorz.kossakowski@gmail.com> | 2013-09-12 10:26:46 -0700 |
commit | 33a819f61b8b9c19708e8ae22bf25adf6cc7ac24 (patch) | |
tree | 30fb8d7295f359aca662eb3fb96bc9f9a0646f1f /src/reflect | |
parent | e748f2ed8fda553fd8fe36499bac63aa115a82a9 (diff) | |
parent | dfe3fe335bf7358e04e7f422fecf16f445c14f2b (diff) | |
download | scala-33a819f61b8b9c19708e8ae22bf25adf6cc7ac24.tar.gz scala-33a819f61b8b9c19708e8ae22bf25adf6cc7ac24.tar.bz2 scala-33a819f61b8b9c19708e8ae22bf25adf6cc7ac24.zip |
Merge pull request #2859 from som-snytt/issue/7622-phaser
SI-7622 Clean Up Phase Assembly
Diffstat (limited to 'src/reflect')
-rw-r--r-- | src/reflect/scala/reflect/internal/Phase.scala | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/reflect/scala/reflect/internal/Phase.scala b/src/reflect/scala/reflect/internal/Phase.scala index 450c90ed56..1ecc202a07 100644 --- a/src/reflect/scala/reflect/internal/Phase.scala +++ b/src/reflect/scala/reflect/internal/Phase.scala @@ -26,11 +26,14 @@ abstract class Phase(val prev: Phase) { ) def flagMask: Long = fmask - private var nx: Phase = this + private var nx: Phase = NoPhase - def next: Phase = nx + // does anyone rely on next == this for terminus? + def next: Phase = if (nx eq NoPhase) this else nx def hasNext = next != this - def iterator = Iterator.iterate(this)(_.next) takeWhile (p => p.next != p) + // this definition excludes the terminal phase + //def iterator = Iterator.iterate(this)(_.nx) takeWhile (p => p.next != p) + def iterator = Iterator.iterate(this)(_.nx) takeWhile (_ ne NoPhase) def name: String def description: String = name |