Cleanup and privatise commit comparator
This commit is contained in:
17
src/main/kotlin/tinyvm/Object.kt
Normal file
17
src/main/kotlin/tinyvm/Object.kt
Normal file
@@ -0,0 +1,17 @@
|
||||
package tinyvm
|
||||
|
||||
import java.security.MessageDigest
|
||||
import java.util.HexFormat
|
||||
|
||||
/**
|
||||
* Represents an arbitrary version manager object.
|
||||
*/
|
||||
abstract class Object(val type: String) {
|
||||
abstract val data: String
|
||||
|
||||
fun hash(): String =
|
||||
HexFormat.of().formatHex(
|
||||
MessageDigest.getInstance("SHA-1")
|
||||
.digest("$type ${data.length}\u0000$data".toByteArray()),
|
||||
)
|
||||
}
|
Reference in New Issue
Block a user