     return r
   }
 
-  func skipToEnd() -> Bool {
+  mutating func skipToEnd() -> Bool {
     currentIndex = lineEndIndex
     return true
   }

    return r
  }

  func matchWhileHexa(consume: Bool = false) -> Int {
    var r = -1
    var i = currentIndex
    let savei = i

    return r
  }

  mutating func eatWhileNeitherThree(c1: UInt8, c2: UInt8, c3: UInt8) -> Bool {
    return matchWhileNeitherThree(c1, c2: c2, c3: c3, consume: true) >= 0
  }

  mutating func matchWhileNeitherThree(c1: UInt8, c2: UInt8, c3: UInt8,
      consume: Bool = false) -> Int {
    var r = -1
    var i = currentIndex
