Skip to content

Commit

Permalink
Killing UncheckedScalar as there is no checked exceptions in Kotlin
Browse files Browse the repository at this point in the history
  • Loading branch information
neonailol committed May 14, 2018
1 parent 8f8c5d8 commit ab8a76b
Show file tree
Hide file tree
Showing 16 changed files with 32 additions and 97 deletions.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
package nnl.rocks.kactoos.collection

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import nnl.rocks.kactoos.scalar.Constant

/**
* Base read-only collection.
Expand All @@ -13,8 +13,8 @@ import nnl.rocks.kactoos.scalar.UncheckedScalar
* @since 0.3
*/
open class CollectionEnvelope<X : Any>(
private val col: UncheckedScalar<Collection<X>>
private val col: Scalar<Collection<X>>
) : Collection<X> by col() {

constructor(slr: Scalar<Collection<X>>) : this(UncheckedScalar(slr))
constructor(col: Collection<X>) : this(Constant { col })
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,6 @@ package nnl.rocks.kactoos.io
import nnl.rocks.kactoos.Output
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.StickyScalar
import nnl.rocks.kactoos.scalar.UncheckedScalar

import java.io.File
import java.io.IOException
import java.io.OutputStream
Expand All @@ -23,14 +20,12 @@ import java.nio.file.Path
*
*
*
* @since 0.13
* @since 0.3
*/
class OutputStreamTo(
private val target: UncheckedScalar<OutputStream>
private val target: Scalar<OutputStream>
) : OutputStream() {

constructor(tgt: Scalar<OutputStream>) : this(UncheckedScalar(StickyScalar(tgt)))

/**
* @param path The path
*/
Expand Down
8 changes: 2 additions & 6 deletions kactoos-jvm/src/main/kotlin/nnl/rocks/kactoos/io/ReaderOf.kt
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@ import nnl.rocks.kactoos.Input
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.Text
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.StickyScalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import java.io.*
import java.net.URI
import java.net.URL
Expand All @@ -23,14 +21,12 @@ import java.nio.file.Path
*
*
*
* @since 0.13
* @since 0.3
*/
class ReaderOf(
private val source: UncheckedScalar<Reader>
private val source: Scalar<Reader>
) : Reader() {

private constructor(src: Scalar<Reader>) : this(UncheckedScalar(StickyScalar(src)))

/**
* @param chars Chars
*/
Expand Down
6 changes: 1 addition & 5 deletions kactoos-jvm/src/main/kotlin/nnl/rocks/kactoos/io/WriterTo.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ package nnl.rocks.kactoos.io
import nnl.rocks.kactoos.Output
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.StickyScalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import java.io.*
import java.nio.charset.Charset
import java.nio.charset.CharsetEncoder
Expand All @@ -22,11 +20,9 @@ import java.nio.file.Path
* @since 0.13
*/
class WriterTo(
private val target: UncheckedScalar<Writer>
private val target: Scalar<Writer>
) : Writer() {

constructor(tgt: Scalar<Writer>) : this(UncheckedScalar(StickyScalar(tgt)))

/**
* @param path The path
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,22 +1,19 @@
package nnl.rocks.kactoos.iterable

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import nnl.rocks.kactoos.scalar.Constant

/**
* Iterable envelope.
*
*
* There is no thread-safety guarantee.
*
*
*
* @param X Type of item
* @since 0.24
*/
open class IterableEnvelope<out X : Any>(
private val iterable: UncheckedScalar<Iterable<X>>
private val iterable: Scalar<Iterable<X>>
) : Iterable<X> by iterable() {

constructor(scalar: Scalar<Iterable<X>>) : this(UncheckedScalar(scalar))
constructor(iterable: Iterable<X>) : this(Constant { iterable })
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,22 +3,18 @@ package nnl.rocks.kactoos.iterable
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.iterator.Repeated
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.UncheckedScalar

/**
* Repeat an element.
*
* If you need to repeat endlessly, use [Endless].
*
*
*
*
* @param T Element type
* @since 0.1
*/
class Repeated<T : Any>(
total: Int,
item: UncheckedScalar<T>
item: Scalar<T>
) : IterableEnvelope<T>(
Constant {
Iterable {
Expand All @@ -37,13 +33,4 @@ class Repeated<T : Any>(
elm: T
) : this(total, Constant { elm })

/**
* Ctor.
* @param total The total number of repetitions
* @param elm The element to repeat
*/
constructor(
total: Int,
elm: Scalar<T>
) : this(total, UncheckedScalar<T>(elm))
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package nnl.rocks.kactoos.iterator
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.iterable.IterableOf
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.UncheckedScalar

/**
* Iterator that never ends.
Expand All @@ -13,22 +12,16 @@ import nnl.rocks.kactoos.scalar.UncheckedScalar
*
*
* @param T Element type
* @since 0.4
* @since 0.3
*/
class Endless<T : Any>(private val origin: UncheckedScalar<T>) : Iterator<T> {
class Endless<T : Any>(private val origin: Scalar<T>) : Iterator<T> {

/**
* Ctor.
* @param element Element to repeat
*/
constructor(element: T) : this(Constant { element })

/**
* Ctor.
* @param scalar Scalar to repeat
*/
constructor(scalar: Scalar<T>) : this(UncheckedScalar<T>(scalar))

override fun hasNext(): Boolean = true

override fun next(): T = IterableOf(this.origin()).iterator().next()
Expand Down
18 changes: 2 additions & 16 deletions kactoos-jvm/src/main/kotlin/nnl/rocks/kactoos/iterator/Repeated.kt
Original file line number Diff line number Diff line change
Expand Up @@ -2,23 +2,19 @@ package nnl.rocks.kactoos.iterator

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.UncheckedScalar
import java.util.NoSuchElementException

/**
* Repeat an element.
*
* If you need to repeat endlessly, use [Endless].
*
*
*
*
* @param T Element type
* @since 0.4
* @since 0.3
*/
class Repeated<T : Any>(
private var repeat: Int,
private val elm: UncheckedScalar<T>
private val elm: Scalar<T>
) : Iterator<T> {

/**
Expand All @@ -30,16 +26,6 @@ class Repeated<T : Any>(
element: T
) : this(max, Constant { element })

/**
* Ctor.
* @param max How many times to repeat
* @param scalar Scalar to repeat
*/
constructor(
max: Int,
scalar: Scalar<T>
) : this(max, UncheckedScalar<T>(scalar))

override fun hasNext(): Boolean = this.repeat > 0

override fun next(): T {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
package nnl.rocks.kactoos.list

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import nnl.rocks.kactoos.scalar.Constant

/**
* List envelope.
*
* There is no thread-safety guarantee.
*
* @param T Element type
* @since 0.23
* @since 0.3
*/
open class ListEnvelope<T : Any>(
private val list: UncheckedScalar<List<T>>
private val list: Scalar<List<T>>
) : List<T> by list() {

constructor(src: Scalar<List<T>>) : this(UncheckedScalar(src))
constructor(list: List<T>) : this(Constant { list })
}
12 changes: 4 additions & 8 deletions kactoos-jvm/src/main/kotlin/nnl/rocks/kactoos/map/MapEnvelope.kt
Original file line number Diff line number Diff line change
@@ -1,24 +1,20 @@
package nnl.rocks.kactoos.map

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.scalar.UncheckedScalar
import nnl.rocks.kactoos.scalar.Constant

/**
* Map envelope.
*
* There is no thread-safety guarantee.
*
*
*
* @param X Type of key
* @param Y Type of value
* @see StickyMap
*
* @since 0.24
* @since 0.3
*/
open class MapEnvelope<X, out Y>(private val map: UncheckedScalar<Map<X, Y>>) : Map<X, Y> by map() {
open class MapEnvelope<X, out Y>(private val map: Scalar<Map<X, Y>>) : Map<X, Y> by map() {

constructor(scalar: Scalar<Map<X, Y>>) : this(
UncheckedScalar(scalar)
)
constructor(map: Map<X, Y>) : this(Constant { map })
}
16 changes: 2 additions & 14 deletions kactoos-jvm/src/main/kotlin/nnl/rocks/kactoos/text/SubText.kt
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ package nnl.rocks.kactoos.text
import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.Text
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.UncheckedScalar
import java.io.IOException

/**
Expand All @@ -21,8 +20,8 @@ import java.io.IOException
*/
class SubText(
private val origin: Text,
private val start: UncheckedScalar<Int>,
private val end: UncheckedScalar<Int>
private val start: Scalar<Int>,
private val end: Scalar<Int>
) : Text {

/**
Expand Down Expand Up @@ -65,17 +64,6 @@ class SubText(
finish: Int
) : this(text, Constant { strt }, Constant { finish })

/**
* @param text The Text
* @param strt Start position in the text
* @param finish End position in the text
*/
constructor(
text: Text,
strt: Scalar<Int>,
finish: Scalar<Int>
) : this(text, UncheckedScalar<Int>(strt), UncheckedScalar<Int>(finish))

@Throws(IOException::class)
override fun asString(): String {
var begin = this.start()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package nnl.rocks.kactoos.time

import nnl.rocks.kactoos.Scalar
import nnl.rocks.kactoos.Text
import nnl.rocks.kactoos.scalar.Constant
import nnl.rocks.kactoos.scalar.UncheckedScalar
Expand All @@ -19,7 +20,7 @@ import java.util.Locale
* @since 0.27
*/
class DateAsText(
private val formatted: UncheckedScalar<String>
private val formatted: Scalar<String>
) : Text {

constructor(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import java.util.Date
* @since 0.27
*/
class DateOf(
private val parsed: UncheckedScalar<Date>
private val parsed: Scalar<Date>
) : Scalar<Date> {

constructor(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import java.time.format.DateTimeFormatter
* @since 0.27
*/
class LocalDateTimeOf(
private val parsed: UncheckedScalar<LocalDateTime>
private val parsed: Scalar<LocalDateTime>
) : Scalar<LocalDateTime> {

constructor(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import java.time.format.DateTimeFormatter
* @since 0.27
*/
class OffsetDateTimeOf(
private val parsed: UncheckedScalar<OffsetDateTime>
private val parsed: Scalar<OffsetDateTime>
) : Scalar<OffsetDateTime> {

constructor(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ import java.time.format.DateTimeFormatter
* @since 0.27
*/
class ZonedDateTimeOf(
private val parsed: UncheckedScalar<ZonedDateTime>
private val parsed: Scalar<ZonedDateTime>
) : Scalar<ZonedDateTime> {

/**
Expand Down

0 comments on commit ab8a76b

Please sign in to comment.