Skip to content

Commit

Permalink
Compatible with Scala 2.13
Browse files Browse the repository at this point in the history
  • Loading branch information
pocorall committed Jun 12, 2024
1 parent 79fdc60 commit 2ff64d8
Show file tree
Hide file tree
Showing 5 changed files with 14 additions and 16 deletions.
4 changes: 2 additions & 2 deletions project/Build.scala
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 3,11 @@ import sbt._
object Dependencies {
val android = "com.google.android" % "android" % "4.1.1.4" % "provided"
val android_support_v4 = "com.google.android" % "support-v4" % "r7" % "provided"
val scaloidVersion = "4.3-SNAPSHOT"
val scaloidVersion = "4.4"
val scaloid = "org.scaloid" %% "scaloid" % scaloidVersion

val robolectric = "org.robolectric" % "robolectric" % "2.4" % "test"
val scalaTest = "org.scalatest" %% "scalatest" % "3.0.4" % "test"
val scalaTest = "org.scalatest" %% "scalatest" % "3.1.4" % "test"
val junit = "junit" % "junit" % "4.12" % "test"
val junitInterface = "com.novocode" % "junit-interface" % "0.11" % "test"
}
Original file line number Diff line number Diff line change
Expand Up @@ -202,11 202,10 @@ trait PreferenceHelpers {
def put(value: String, editor: SharedPreferences.Editor): Unit = editor.putString(key, value)
}.asInstanceOf[PreferenceVar[T]]
case v: Set[String] => new PreferenceVar[Set[String]](key, v) {
import scala.collection.JavaConversions._
import scala.collection.JavaConverters._
override def apply(value: Set[String])(implicit pref: SharedPreferences): Set[String] = pref.getStringSet(key, value).asScala.toSet
override def apply(value: Set[String])(implicit pref: SharedPreferences): Set[String] = pref.getStringSet(key, value.asJava).asScala.toSet

def put(value: Set[String], editor: SharedPreferences.Editor): Unit = editor.putStringSet(key, value)
def put(value: Set[String], editor: SharedPreferences.Editor): Unit = editor.putStringSet(key, value.asJava)
}.asInstanceOf[PreferenceVar[T]]
case v: Int => new PreferenceVar[Int](key, v) {
override def apply(value: Int)(implicit pref: SharedPreferences): Int = pref.getInt(key, value)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 36,7 @@
package org.scaloid.common

import android.content.{ Context, SharedPreferences }
import scala.collection.JavaConversions._
import scala.collection.JavaConverters._
import scala.language.dynamics
import scala.reflect._

Expand All @@ -63,7 63,7 @@ class Preferences(val preferences: SharedPreferences) extends Dynamic {
case v: Long => preferences.edit().putLong(name, v).apply()
case v: Boolean => preferences.edit().putBoolean(name, v).apply()
case v: Float => preferences.edit().putFloat(name, v).apply()
case v: Set[String @unchecked] => preferences.edit().putStringSet(name, v).apply()
case v: Set[String @unchecked] => preferences.edit().putStringSet(name, v.asJava).apply()
}
}

Expand All @@ -73,7 73,7 @@ class Preferences(val preferences: SharedPreferences) extends Dynamic {
case v: Long => preferences.getLong(name, v).asInstanceOf[T]
case v: Boolean => preferences.getBoolean(name, v).asInstanceOf[T]
case v: Float => preferences.getFloat(name, v).asInstanceOf[T]
case v: Set[String @unchecked] => preferences.getStringSet(name, v).toSet.asInstanceOf[T]
case v: Set[String @unchecked] => preferences.getStringSet(name, v.asJava).asScala.toSet.asInstanceOf[T]
}

def remove(name: String) {
Expand Down Expand Up @@ -106,7 106,7 @@ class Preferences(val preferences: SharedPreferences) extends Dynamic {
}

val StringSet = new TypedPreferences[Set[String]] {
override def get(name: String): Set[String] = preferences.getStringSet(name, null).toSet
override def get(name: String): Set[String] = preferences.getStringSet(name, null).asScala.toSet
}
}

Expand Down
5 changes: 2 additions & 3 deletions scaloid-common/src/main/st/org/scaloid/common/helpers.scala
Original file line number Diff line number Diff line change
Expand Up @@ -171,11 171,10 @@ trait PreferenceHelpers {
def put(value: String, editor: SharedPreferences.Editor): Unit = editor.putString(key, value)
}.asInstanceOf[PreferenceVar[T]]
case v: Set[String] => new PreferenceVar[Set[String]](key, v) {
import scala.collection.JavaConversions._
import scala.collection.JavaConverters._
override def apply(value: Set[String])(implicit pref: SharedPreferences): Set[String] = pref.getStringSet(key, value).asScala.toSet
override def apply(value: Set[String])(implicit pref: SharedPreferences): Set[String] = pref.getStringSet(key, value.asJava).asScala.toSet

def put(value: Set[String], editor: SharedPreferences.Editor): Unit = editor.putStringSet(key, value)
def put(value: Set[String], editor: SharedPreferences.Editor): Unit = editor.putStringSet(key, value.asJava)
}.asInstanceOf[PreferenceVar[T]]
case v: Int => new PreferenceVar[Int](key, v) {
override def apply(value: Int)(implicit pref: SharedPreferences): Int = pref.getInt(key, value)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 3,7 @@ $license()$
package org.scaloid.common

import android.content.{Context, SharedPreferences}
import scala.collection.JavaConversions._
import scala.collection.JavaConverters._
import scala.language.dynamics
import scala.reflect._

Expand Down Expand Up @@ -31,7 31,7 @@ class Preferences(val preferences: SharedPreferences) extends Dynamic {
case v: Boolean => preferences.edit().putBoolean(name, v).apply()
case v: Float => preferences.edit().putFloat(name, v).apply()
$if(ver.gte_11)$
case v: Set[String @unchecked] => preferences.edit().putStringSet(name, v).apply()
case v: Set[String @unchecked] => preferences.edit().putStringSet(name, v.asJava).apply()
$endif$
}
}
Expand All @@ -43,7 43,7 @@ $endif$
case v: Boolean => preferences.getBoolean(name, v).asInstanceOf[T]
case v: Float => preferences.getFloat(name, v).asInstanceOf[T]
$if(ver.gte_11)$
case v: Set[String @unchecked] => preferences.getStringSet(name, v).toSet.asInstanceOf[T]
case v: Set[String @unchecked] => preferences.getStringSet(name, v.asJava).asScala.toSet.asInstanceOf[T]
$endif$
}

Expand Down Expand Up @@ -78,7 78,7 @@ $endif$

$if(ver.gte_11)$
val StringSet = new TypedPreferences[Set[String]] {
override def get(name: String): Set[String] = preferences.getStringSet(name, null).toSet
override def get(name: String): Set[String] = preferences.getStringSet(name, null).asScala.toSet
}
$endif$
}
Expand Down

0 comments on commit 2ff64d8

Please sign in to comment.