diff options
Diffstat (limited to 'examples/crossBuilds')
5 files changed, 59 insertions, 0 deletions
diff --git a/examples/crossBuilds/simple/build.sbt b/examples/crossBuilds/simple/build.sbt new file mode 100644 index 0000000..df0c84b --- /dev/null +++ b/examples/crossBuilds/simple/build.sbt @@ -0,0 +1,8 @@ +lazy val js = project.in(file("js")).settings(scalaJSSettings:_*).settings( + unmanagedSourceDirectories in Compile += + baseDirectory.value / ".." / "shared" / "main" / "scala" +) +lazy val jvm = project.in(file("jvm")).settings( + unmanagedSourceDirectories in Compile += + baseDirectory.value / ".." / "shared" / "main" / "scala" +)
\ No newline at end of file diff --git a/examples/crossBuilds/simple/js/src/main/scala/simple/Platform.scala b/examples/crossBuilds/simple/js/src/main/scala/simple/Platform.scala new file mode 100644 index 0000000..40f65f4 --- /dev/null +++ b/examples/crossBuilds/simple/js/src/main/scala/simple/Platform.scala @@ -0,0 +1,18 @@ +/*js/src/main/scala/simple/Platform.scala*/ +package simple +import scala.scalajs.js + +object Platform extends js.JSApp{ + def format(ts: Long) = { + new js.Date(ts).toLocaleString(); + } + def main() = { + println("simple.js") + val times = Seq( + System.currentTimeMillis(), + System.currentTimeMillis() + 1000, + System.currentTimeMillis() + 2000 + ) + println(Simple.formatTimestamps(times)) + } +}
\ No newline at end of file diff --git a/examples/crossBuilds/simple/jvm/src/main/scala/simple/Platform.scala b/examples/crossBuilds/simple/jvm/src/main/scala/simple/Platform.scala new file mode 100644 index 0000000..af70429 --- /dev/null +++ b/examples/crossBuilds/simple/jvm/src/main/scala/simple/Platform.scala @@ -0,0 +1,23 @@ +/*jvm/src/main/scala/simple/Platform.scala*/ +package simple +import java.text.SimpleDateFormat + +object Platform{ + def format(ts: Long) = { + // http://docs.oracle.com/javase/7/ + // docs/api/java/text/SimpleDateFormat.html + val fmt = "MMMM d, yyyy h:mm:ss aaa z" + new SimpleDateFormat(fmt).format( + new java.util.Date(ts) + ) + } + def main(args: Array[String]) = { + println("simple.jvm") + val times = Seq( + System.currentTimeMillis(), + System.currentTimeMillis() + 1000, + System.currentTimeMillis() + 2000 + ) + println(Simple.formatTimestamps(times)) + } +}
\ No newline at end of file diff --git a/examples/crossBuilds/simple/project/build.sbt b/examples/crossBuilds/simple/project/build.sbt new file mode 100644 index 0000000..5ac559a --- /dev/null +++ b/examples/crossBuilds/simple/project/build.sbt @@ -0,0 +1 @@ +addSbtPlugin("org.scala-lang.modules.scalajs" % "scalajs-sbt-plugin" % "0.5.5")
\ No newline at end of file diff --git a/examples/crossBuilds/simple/shared/main/scala/simple/Simple.scala b/examples/crossBuilds/simple/shared/main/scala/simple/Simple.scala new file mode 100644 index 0000000..4e693e4 --- /dev/null +++ b/examples/crossBuilds/simple/shared/main/scala/simple/Simple.scala @@ -0,0 +1,9 @@ +/*shared/main/scala/simple/Simple.scala*/ +package simple +object Simple{ + def formatTimestamps(timestamps: Seq[Long]) = { + timestamps.map(Platform.format) + .mkString("\n") + } + } +}
\ No newline at end of file |