diff --git a/libraries/pom.xml b/libraries/pom.xml
index 545322b176b..6068b15a657 100644
--- a/libraries/pom.xml
+++ b/libraries/pom.xml
@@ -91,6 +91,8 @@
tools/kdoc-maven-plugin
stdlib
+ stdlib/validator
+
kunit
kotlin-jdbc
kotlin-swing
diff --git a/libraries/stdlib/src/kotlin/JLangJVM.kt b/libraries/stdlib/src/kotlin/JLangJVM.kt
index 0feaa0591aa..5e8e971e88d 100644
--- a/libraries/stdlib/src/kotlin/JLangJVM.kt
+++ b/libraries/stdlib/src/kotlin/JLangJVM.kt
@@ -19,12 +19,12 @@ import kotlin.InlineOption.ONLY_LOCAL_RETURN
* String readFile(String name) throws IOException {...}
*/
Retention(RetentionPolicy.SOURCE)
-public annotation class throws(vararg val exceptionClasses: Class)
+public annotation class throws(public vararg val exceptionClasses: Class)
[Intrinsic("kotlin.javaClass.property")] public val T.javaClass : Class
get() = (this as java.lang.Object).getClass() as Class
-[Intrinsic("kotlin.javaClass.function")] fun javaClass() : Class = null as Class
+[Intrinsic("kotlin.javaClass.function")] public fun javaClass(): Class = null as Class
public inline fun synchronized(lock: Any, [inlineOptions(ONLY_LOCAL_RETURN)] block: () -> R): R {
monitorEnter(lock)
diff --git a/libraries/stdlib/src/kotlin/Numbers.kt b/libraries/stdlib/src/kotlin/Numbers.kt
index baf74f35640..ddc3aa1ef5d 100644
--- a/libraries/stdlib/src/kotlin/Numbers.kt
+++ b/libraries/stdlib/src/kotlin/Numbers.kt
@@ -4,10 +4,10 @@ package kotlin
* Returns {@code true} if the specified number is a
* Not-a-Number (NaN) value, {@code false} otherwise.
*/
-fun Double.isNaN() = this != this
+public fun Double.isNaN(): Boolean = this != this
/**
* Returns {@code true} if the specified number is a
* Not-a-Number (NaN) value, {@code false} otherwise.
*/
-fun Float.isNaN() = this != this
\ No newline at end of file
+public fun Float.isNaN(): Boolean = this != this
\ No newline at end of file
diff --git a/libraries/stdlib/src/kotlin/OrderingJVM.kt b/libraries/stdlib/src/kotlin/OrderingJVM.kt
index f1908a4a8f7..f923bad70ca 100644
--- a/libraries/stdlib/src/kotlin/OrderingJVM.kt
+++ b/libraries/stdlib/src/kotlin/OrderingJVM.kt
@@ -6,7 +6,7 @@ import java.util.Comparator
* Helper method for implementing [[Comparable]] methods using a list of functions
* to calculate the values to compare
*/
-fun compareBy(a: T?, b: T?, vararg functions: T.() -> Comparable<*>?): Int {
+public fun compareBy(a: T?, b: T?, vararg functions: T.() -> Comparable<*>?): Int {
require(functions.size > 0)
if (a === b) return 0
if (a == null) return - 1
@@ -41,7 +41,7 @@ public fun comparator(vararg functions: T.() -> Comparable<*>?): Comparator<
}
-private class FunctionComparator(vararg val functions: T.() -> Comparable<*>?): Comparator {
+private class FunctionComparator(private vararg val functions: T.() -> Comparable<*>?) : Comparator {
public override fun toString(): String {
return "FunctionComparator${functions.toList()}"
@@ -62,7 +62,8 @@ private class FunctionComparator(vararg val functions: T.() -> Comparable<*>?
public fun comparator(fn: (T,T) -> Int): Comparator {
return Function2Comparator(fn)
}
-private class Function2Comparator(val compareFn: (T,T) -> Int): Comparator {
+
+private class Function2Comparator(private val compareFn: (T, T) -> Int) : Comparator {
public override fun toString(): String {
return "Function2Comparator${compareFn}"
diff --git a/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt b/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt
index 193b5e83955..64c286256b0 100644
--- a/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt
+++ b/libraries/stdlib/src/kotlin/collections/AbstractIterator.kt
@@ -6,7 +6,7 @@ import java.util.NoSuchElementException
import java.lang.UnsupportedOperationException
// not using an enum for now as JS generation doesn't support it
-object State {
+private object State {
val Ready = 0
val NotReady = 1
val Done = 2
diff --git a/libraries/stdlib/src/kotlin/collections/Exceptions.kt b/libraries/stdlib/src/kotlin/collections/Exceptions.kt
index 3acdb6f5725..eac02e90037 100644
--- a/libraries/stdlib/src/kotlin/collections/Exceptions.kt
+++ b/libraries/stdlib/src/kotlin/collections/Exceptions.kt
@@ -1,5 +1,5 @@
package kotlin
-public class EmptyIterableException(val it : Iterable<*>) : RuntimeException("$it is empty")
+public class EmptyIterableException(private val it: Iterable<*>) : RuntimeException("$it is empty")
public class DuplicateKeyException(message : String = "Duplicate keys detected") : RuntimeException(message)
\ No newline at end of file
diff --git a/libraries/stdlib/src/kotlin/collections/JUtil.kt b/libraries/stdlib/src/kotlin/collections/JUtil.kt
index 05bb42dc830..fffda871414 100644
--- a/libraries/stdlib/src/kotlin/collections/JUtil.kt
+++ b/libraries/stdlib/src/kotlin/collections/JUtil.kt
@@ -2,11 +2,11 @@ package kotlin
import java.util.*
-class stdlib_emptyListClass : List by ArrayList() {}
+private class stdlib_emptyListClass : List by ArrayList() {}
private val stdlib_emptyList : List = ArrayList() // TODO: Change to stdlib_emptyListClass() when KT-5192 is fixed
private fun stdlib_emptyList() = stdlib_emptyList as List
-class stdlib_emptyMapClass : Map by HashMap() {}
+private class stdlib_emptyMapClass : Map by HashMap() {}
private val stdlib_emptyMap : Map = HashMap() // TODO: Change to stdlib_emptyMapClass() when KT-5192 is fixed
private fun stdlib_emptyMap() = stdlib_emptyMap as Map
@@ -71,7 +71,7 @@ public val Int.indices: IntRange
public fun Collection.isNotEmpty(): Boolean = !this.isEmpty()
/** Returns true if this collection is not empty */
-val Collection<*>.notEmpty: Boolean
+public val Collection<*>.notEmpty: Boolean
get() = isNotEmpty()
/** Returns the Collection if its not null otherwise it returns the empty list */
@@ -105,7 +105,7 @@ answer.sort(comparator)
*
* @includeFunctionBody ../../test/collections/ListSpecificTest.kt first
*/
-val List.first: T?
+public val List.first: T?
get() = this.head
@@ -114,7 +114,7 @@ val List.first: T?
*
* @includeFunctionBody ../../test/collections/ListSpecificTest.kt last
*/
-val List.last: T?
+public val List.last: T?
get() {
val s = this.size
return if (s > 0) this[s - 1] else null
@@ -125,7 +125,7 @@ val List.last: T?
*
* @includeFunctionBody ../../test/collections/ListSpecificTest.kt lastIndex
*/
-val List.lastIndex: Int
+public val List.lastIndex: Int
get() = this.size - 1
/**
@@ -133,7 +133,7 @@ val List.lastIndex: Int
*
* @includeFunctionBody ../../test/collections/ListSpecificTest.kt head
*/
-val List.head: T?
+public val List.head: T?
get() = if (this.isNotEmpty()) this[0] else null
/**
@@ -141,7 +141,7 @@ val List.head: T?
*
* @includeFunctionBody ../../test/collections/ListSpecificTest.kt tail
*/
-val List.tail: List
+public val List.tail: List
get() {
return this.drop(1)
}
diff --git a/libraries/stdlib/src/kotlin/collections/JUtilJVM.kt b/libraries/stdlib/src/kotlin/collections/JUtilJVM.kt
index a83d1ede0c6..b65e291e6c3 100644
--- a/libraries/stdlib/src/kotlin/collections/JUtilJVM.kt
+++ b/libraries/stdlib/src/kotlin/collections/JUtilJVM.kt
@@ -46,4 +46,4 @@ public fun Set?.orEmpty(): Set
* specified enumeration in the order they are returned by the
* enumeration.
*/
-fun Enumeration.toList(): List = Collections.list(this)
+public fun Enumeration.toList(): List = Collections.list(this)
diff --git a/libraries/stdlib/src/kotlin/collections/Maps.kt b/libraries/stdlib/src/kotlin/collections/Maps.kt
index 48540340d2c..29a374e6880 100644
--- a/libraries/stdlib/src/kotlin/collections/Maps.kt
+++ b/libraries/stdlib/src/kotlin/collections/Maps.kt
@@ -27,17 +27,17 @@ public val Map.Entry.value: V
get() = getValue()
/** Returns the key of the entry */
-fun Map.Entry.component1(): K {
+public fun Map.Entry.component1(): K {
return getKey()
}
/** Returns the value of the entry */
-fun Map.Entry.component2(): V {
+public fun Map.Entry.component2(): V {
return getValue()
}
/** Converts entry to Pair with key being first component and value being second */
-fun Map.Entry.toPair(): Pair {
+public fun Map.Entry.toPair(): Pair {
return Pair(getKey(), getValue())
}
diff --git a/libraries/stdlib/src/kotlin/collections/Stream.kt b/libraries/stdlib/src/kotlin/collections/Stream.kt
index 357e78ff1b6..5ce7c097d01 100644
--- a/libraries/stdlib/src/kotlin/collections/Stream.kt
+++ b/libraries/stdlib/src/kotlin/collections/Stream.kt
@@ -9,7 +9,9 @@ public trait Stream {
public fun streamOf(vararg elements: T): Stream = elements.stream()
-public class FilteringStream(val stream: Stream, val sendWhen: Boolean = true, val predicate: (T) -> Boolean) : Stream {
+public class FilteringStream(
+ private val stream: Stream, private val sendWhen: Boolean = true, private val predicate: (T) -> Boolean
+) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator = stream.iterator()
override fun computeNext() {
@@ -25,7 +27,7 @@ public class FilteringStream(val stream: Stream, val sendWhen: Boolean = t
}
}
-public class TransformingStream(val stream: Stream, val transformer: (T) -> R) : Stream {
+public class TransformingStream(private val stream: Stream, private val transformer: (T) -> R) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator = stream.iterator()
override fun computeNext() {
@@ -38,7 +40,9 @@ public class TransformingStream(val stream: Stream, val transformer: (T
}
}
-public class MergingStream(val stream1: Stream, val stream2: Stream, val transform: (T1, T2) -> V) : Stream {
+public class MergingStream(
+ private val stream1: Stream, private val stream2: Stream, private val transform: (T1, T2) -> V
+) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator1 = stream1.iterator()
val iterator2 = stream2.iterator()
@@ -52,7 +56,9 @@ public class MergingStream(val stream1: Stream, val stream2: Stre
}
}
-public class FlatteningStream(val stream: Stream, val transformer: (T) -> Stream) : Stream {
+public class FlatteningStream(
+ private val stream: Stream, private val transformer: (T) -> Stream
+) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator = stream.iterator()
var itemIterator: Iterator? = null
@@ -81,7 +87,7 @@ public class FlatteningStream(val stream: Stream, val transformer: (T)
}
}
-public class Multistream(val streams: Stream>) : Stream {
+public class Multistream(private val streams: Stream>) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator = streams.iterator()
var streamIterator: Iterator? = null
@@ -110,7 +116,9 @@ public class Multistream(val streams: Stream>) : Stream {
}
}
-public class LimitedStream(val stream: Stream, val stopWhen: Boolean = true, val predicate: (T) -> Boolean) : Stream {
+public class LimitedStream(
+ private val stream: Stream, private val stopWhen: Boolean = true, private val predicate: (T) -> Boolean
+) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
val iterator = stream.iterator()
override fun computeNext() {
@@ -128,7 +136,7 @@ public class LimitedStream(val stream: Stream, val stopWhen: Boolean = tru
}
}
-public class FunctionStream(val producer: () -> T?) : Stream {
+public class FunctionStream(private val producer: () -> T?) : Stream {
override fun iterator(): Iterator = object : AbstractIterator() {
override fun computeNext() {
diff --git a/libraries/stdlib/src/kotlin/collections/iterators/Iterators.kt b/libraries/stdlib/src/kotlin/collections/iterators/Iterators.kt
index 474d6c8e1e6..c13f229124e 100644
--- a/libraries/stdlib/src/kotlin/collections/iterators/Iterators.kt
+++ b/libraries/stdlib/src/kotlin/collections/iterators/Iterators.kt
@@ -33,7 +33,8 @@ deprecated("Replace Iterator with Stream by using stream() function instea
public fun Iterator.skip(n: Int): Iterator = SkippingIterator(this, n)
deprecated("Use FilteringStream instead")
-class FilterIterator(val iterator : Iterator, val predicate: (T)-> Boolean) : AbstractIterator() {
+public class FilterIterator(private val iterator: Iterator, private val predicate: (T) -> Boolean) :
+ AbstractIterator() {
override protected fun computeNext(): Unit {
while (iterator.hasNext()) {
val next = iterator.next()
@@ -47,7 +48,7 @@ class FilterIterator(val iterator : Iterator, val predicate: (T)-> Boolean
}
deprecated("Use FilteringStream instead")
-class FilterNotNullIterator(val iterator : Iterator?) : AbstractIterator() {
+public class FilterNotNullIterator(private val iterator: Iterator?) : AbstractIterator() {
override protected fun computeNext(): Unit {
if (iterator != null) {
while (iterator.hasNext()) {
@@ -63,8 +64,9 @@ class FilterNotNullIterator(val iterator : Iterator?) : AbstractItera
}
deprecated("Use TransformingStream instead")
-class MapIterator(val iterator : Iterator, val transform: (T) -> R) : AbstractIterator() {
- override protected fun computeNext() : Unit {
+public class MapIterator(private val iterator: Iterator, private val transform: (T) -> R) :
+ AbstractIterator() {
+ override protected fun computeNext(): Unit {
if (iterator.hasNext()) {
setNext((transform)(iterator.next()))
} else {
@@ -74,10 +76,11 @@ class MapIterator(val iterator : Iterator, val transform: (T) -> R) : A
}
deprecated("Use FlatteningStream instead")
-class FlatMapIterator(val iterator : Iterator, val transform: (T) -> Iterator) : AbstractIterator() {
- var transformed: Iterator = iterate { null }
+public class FlatMapIterator(private val iterator: Iterator, private val transform: (T) -> Iterator) :
+ AbstractIterator() {
+ private var transformed: Iterator = iterate { null }
- override protected fun computeNext() : Unit {
+ override protected fun computeNext(): Unit {
while (true) {
if (transformed.hasNext()) {
setNext(transformed.next())
@@ -94,7 +97,8 @@ class FlatMapIterator(val iterator : Iterator, val transform: (T) -> It
}
deprecated("Use LimitedStream instead")
-class TakeWhileIterator(val iterator: Iterator, val predicate: (T) -> Boolean) : AbstractIterator() {
+public class TakeWhileIterator(private val iterator: Iterator, private val predicate: (T) -> Boolean) :
+ AbstractIterator() {
override protected fun computeNext() : Unit {
if (iterator.hasNext()) {
val item = iterator.next()
@@ -109,7 +113,7 @@ class TakeWhileIterator(val iterator: Iterator, val predicate: (T) -> Bool
/** An [[Iterator]] which invokes a function to calculate the next value in the iteration until the function returns *null* */
deprecated("Use FunctionStream instead")
-class FunctionIterator(val nextFunction: () -> T?): AbstractIterator() {
+public class FunctionIterator(private val nextFunction: () -> T?) : AbstractIterator() {
override protected fun computeNext(): Unit {
val next = (nextFunction)()
@@ -123,12 +127,12 @@ class FunctionIterator(val nextFunction: () -> T?): AbstractIterator()
/** An [[Iterator]] which iterates over a number of iterators in sequence */
deprecated("Use Multistream instead")
-fun CompositeIterator(vararg iterators: Iterator): CompositeIterator = CompositeIterator(iterators.iterator())
+public fun CompositeIterator(vararg iterators: Iterator): CompositeIterator = CompositeIterator(iterators.iterator())
deprecated("Use Multistream instead")
-class CompositeIterator(val iterators: Iterator>): AbstractIterator() {
+public class CompositeIterator(private val iterators: Iterator>) : AbstractIterator() {
- var currentIter: Iterator? = null
+ private var currentIter: Iterator