diff options
author | Roman Gräf <romangraef@loves.dicksinhisan.us> | 2020-07-13 01:57:33 +0200 |
---|---|---|
committer | Roman Gräf <romangraef@loves.dicksinhisan.us> | 2020-07-13 01:57:33 +0200 |
commit | 11b49d815b69a8ff45643d357d67cbdab11caf4e (patch) | |
tree | e97e87737426020d4e79dd5ea69958ea62708680 /src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt | |
parent | 92358494319c66a5ded4ee13a173846cd15f284e (diff) | |
download | jrconfig-1.0.tar.gz jrconfig-1.0.tar.bz2 jrconfig-1.0.zip |
default valuesv1.0
Diffstat (limited to 'src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt')
-rw-r--r-- | src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt b/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt new file mode 100644 index 0000000..2a65177 --- /dev/null +++ b/src/main/kotlin/com/romangraef/jrconfig/variables/EnumVariable.kt @@ -0,0 +1,15 @@ +package com.romangraef.jrconfig.variables + +import com.romangraef.jrconfig.ConfigSaveLoadProvider +import com.romangraef.jrconfig.TransformerConfigVariable + +class EnumVariable<T : Enum<T>>(val enumClass: Class<T>, provider: ConfigSaveLoadProvider, point: String) : + TransformerConfigVariable<T>(provider, point) { + override fun transform(value: String): T { + return java.lang.Enum.valueOf(enumClass, value) + } + + override fun serialize(data: T): String { + return data.name + } +}
\ No newline at end of file |