summaryrefslogtreecommitdiff
path: root/examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala
diff options
context:
space:
mode:
Diffstat (limited to 'examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala')
-rw-r--r--examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala38
1 files changed, 38 insertions, 0 deletions
diff --git a/examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala b/examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala
new file mode 100644
index 0000000..718404a
--- /dev/null
+++ b/examples/scala-js/library/src/main/scala/scala/scalajs/js/annotation/JSExportNamed.scala
@@ -0,0 +1,38 @@
+/* __ *\
+** ________ ___ / / ___ Scala API **
+** / __/ __// _ | / / / _ | (c) 2003-2013, LAMP/EPFL **
+** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ **
+** /____/\___/_/ |_/____/_/ | | **
+** |/ **
+\* */
+
+
+
+package scala.scalajs.js.annotation
+
+/** Exports the given method to JavaScript with named parameters.
+ *
+ * It can then be called like this:
+ * {{{
+ * obj.foo({
+ * param1: value1
+ * param2: value2
+ * param7: value3
+ * });
+ * }}}
+ *
+ * Note that named exports don't support overloading. Therefore the
+ * following will fail:
+ * {{{
+ * class A {
+ * @JSExportNamed
+ * def a(foo: Int) = foo + 1
+ * @JSExportNamed
+ * def a(bar: String) = "Hello " + bar
+ * }
+ * }}}
+ * @see [[http://www.scala-js.org/doc/export-to-javascript.html Export Scala.js APIs to JavaScript]]
+ */
+class JSExportNamed extends scala.annotation.StaticAnnotation {
+ def this(name: String) = this()
+}