Open / data forbidden: SMAP fixes

This commit is contained in:
Mikhail Glukhikh
2015-10-05 14:23:50 +03:00
committed by Mikhail Glukhikh
parent efb23be367
commit b79c1435a3
@@ -339,16 +339,18 @@ open public class FileMapping(val name: String, val path: String) {
} }
//TODO comparable //TODO comparable
data open public class RangeMapping(val source: Int, val dest: Int, var range: Int = 1) { data public class RangeMapping(val source: Int, val dest: Int, var range: Int = 1) {
var parent: FileMapping? = null; var parent: FileMapping? = null;
open fun contains(destLine: Int): Boolean { private val skip = source == -1 && dest == -1
return dest <= destLine && destLine < dest + range
fun contains(destLine: Int): Boolean {
return if (skip) true else dest <= destLine && destLine < dest + range
} }
open fun map(destLine: Int): Int { fun map(destLine: Int): Int {
return source + (destLine - dest) return if (skip) -1 else source + (destLine - dest)
} }
object Comparator : java.util.Comparator<RangeMapping> { object Comparator : java.util.Comparator<RangeMapping> {
@@ -365,13 +367,7 @@ data open public class RangeMapping(val source: Int, val dest: Int, var range: I
} }
} }
public object SKIP : RangeMapping(-1, -1, 1) { companion object {
override fun contains(destLine: Int): Boolean { public val SKIP = RangeMapping(-1, -1, 1)
return true
}
override fun map(destLine: Int): Int {
return -1
}
} }
} }