summaryrefslogtreecommitdiff
path: root/src/dotnet-library/scala/Product2.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/dotnet-library/scala/Product2.scala')
-rw-r--r--src/dotnet-library/scala/Product2.scala54
1 files changed, 54 insertions, 0 deletions
diff --git a/src/dotnet-library/scala/Product2.scala b/src/dotnet-library/scala/Product2.scala
new file mode 100644
index 0000000000..0866c141c7
--- /dev/null
+++ b/src/dotnet-library/scala/Product2.scala
@@ -0,0 +1,54 @@
+
+/* __ *\
+** ________ ___ / / ___ Scala API **
+** / __/ __// _ | / / / _ | (c) 2002-2007, LAMP/EPFL **
+** __\ \/ /__/ __ |/ /__/ __ | **
+** /____/\___/_/ |_/____/_/ | | **
+** |/ **
+\* */
+
+// $Id: genprod.scala 9547 2007-01-03 16:34:59Z emir $
+
+// generated by genprod on Wed Jan 03 17:36:14 CET 2007
+
+package scala
+
+import Predef._
+
+object Product2 {
+ def unapply[T1, T2](x: Product2[T1, T2]): Option[Product2[T1, T2]] =
+ Some(x)
+}
+
+/** Product2 is a cartesian product of 2 components
+ */
+trait Product2[+T1, +T2] extends Product {
+
+ /**
+ * The arity of this product.
+ * @return 2
+ */
+ override def arity = 2
+
+ /**
+ * Returns the n-th projection of this product if 0<=n<arity,
+ * otherwise null.
+ *
+ * @param n number of the projection to be returned
+ * @return same as _(n+1)
+ * @throws IndexOutOfBoundsException
+ */
+ override def element(n: Int) = n match {
+ case 0 => _1
+ case 1 => _2
+ case _ => throw new IndexOutOfBoundsException(n.toString())
+ }
+
+ /** projection of this product */
+ def _1: T1
+
+/** projection of this product */
+ def _2: T2
+
+
+}