summaryrefslogtreecommitdiff
path: root/src/main/kotlin/IPAddress.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/IPAddress.kt')
-rw-r--r--src/main/kotlin/IPAddress.kt11
1 files changed, 5 insertions, 6 deletions
diff --git a/src/main/kotlin/IPAddress.kt b/src/main/kotlin/IPAddress.kt
index 206a8b6..4d3967d 100644
--- a/src/main/kotlin/IPAddress.kt
+++ b/src/main/kotlin/IPAddress.kt
@@ -2,8 +2,7 @@
* An IP address (v4 or v6).
*/
class IPAddress {
- private var address4: Array<Byte> = Array(4) { 0 }
- private var address6: Array<Byte> = Array(16) { 0 }
+ private var address: Array<Byte>
private var is4: Boolean
/**
@@ -16,23 +15,23 @@ class IPAddress {
if (split4.size == 4) {
bytes = split4.map { it.toByte() }
- this.address4 = bytes.toTypedArray()
this.is4 = true
} else if (split6.size == 16) {
bytes = split4.map { it.toByte(16) }
- this.address6 = bytes.toTypedArray()
this.is4 = false
} else {
throw NumberFormatException()
}
+
+ this.address = bytes.toTypedArray()
}
override fun toString(): String {
val str: String
if (this.is4) {
- str = address4.joinToString(separator = ".") { it.toString() }
+ str = this.address.joinToString(separator = ".") { it.toString() }
} else {
- str = address6.joinToString(separator = ":") { it.toString() }
+ str = this.address.joinToString(separator = ":") { it.toString() }
}
return str
}