summaryrefslogtreecommitdiff
path: root/src/compiler/scala/tools/nsc/util/CharArrayReader.scala
diff options
context:
space:
mode:
authorSean McDirmid <sean.mcdirmid@gmail.com>2007-09-17 16:36:10 +0000
committerSean McDirmid <sean.mcdirmid@gmail.com>2007-09-17 16:36:10 +0000
commita205b6b06e705711308c9ad3abac74ba66b6266f (patch)
tree49aa189b4917b20d76c2da02cbf9475af5a49662 /src/compiler/scala/tools/nsc/util/CharArrayReader.scala
parent3f9b82c88d74c1b03daf5131b50c172213f40a63 (diff)
downloadscala-a205b6b06e705711308c9ad3abac74ba66b6266f.tar.gz
scala-a205b6b06e705711308c9ad3abac74ba66b6266f.tar.bz2
scala-a205b6b06e705711308c9ad3abac74ba66b6266f.zip
Massive check-in for IDE.
Diffstat (limited to 'src/compiler/scala/tools/nsc/util/CharArrayReader.scala')
-rw-r--r--src/compiler/scala/tools/nsc/util/CharArrayReader.scala16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/compiler/scala/tools/nsc/util/CharArrayReader.scala b/src/compiler/scala/tools/nsc/util/CharArrayReader.scala
index ba67c6e3ea..4f99ecc221 100644
--- a/src/compiler/scala/tools/nsc/util/CharArrayReader.scala
+++ b/src/compiler/scala/tools/nsc/util/CharArrayReader.scala
@@ -8,10 +8,10 @@ package scala.tools.nsc.util
import scala.tools.nsc.util.SourceFile.{LF, FF, CR, SU}
-class CharArrayReader(buf: Array[Char], start: Int, /* startline: Int, startcol: Int, */
- decodeUni: Boolean, error: String => Unit) extends Iterator[Char] {
+class CharArrayReader(buf: RandomAccessSeq[Char], start: Int, /* startline: int, startcol: int, */
+ decodeUni: Boolean, error: String => unit) extends Iterator[Char] {
- def this(buf: Array[Char], decodeUni: Boolean, error: String => Unit) =
+ def this(buf: RandomAccessSeq[Char], decodeUni: Boolean, error: String => unit) =
this(buf, 0, /* 1, 1, */ decodeUni, error)
/** layout constant
@@ -46,17 +46,21 @@ class CharArrayReader(buf: Array[Char], start: Int, /* startline: Int, startcol:
//nextcol = 1
}
- def hasNext: Boolean = bp < buf.length
+ def hasNext: Boolean = if (bp < buf.length) true
+ else {
+ assert(true)
+ false
+ }
def last: Char = if (bp > start + 2) buf(bp - 2) else ' ' // XML literals
def next: Char = {
//cline = nextline
//ccol = nextcol
+ val buf = this.buf.asInstanceOf[runtime.BoxedCharArray].value
if(!hasNext) {
- // there is an endless stream of SU's at the end
ch = SU
- return SU
+ return SU // there is an endless stream of SU's at the end
}
oldBp = bp
oldCh = ch