diff options
author | mihaylov <mihaylov@epfl.ch> | 2007-02-07 09:06:25 +0000 |
---|---|---|
committer | mihaylov <mihaylov@epfl.ch> | 2007-02-07 09:06:25 +0000 |
commit | e3b42865333ed502b3e454c98eefbfc705e33d82 (patch) | |
tree | 68982d6051371b3731c6918e44cc0d9788b15e59 /src/dotnet-library/scala/Product1.scala | |
parent | 108db60672ffa6a70617f51b166d8c751d7e65bb (diff) | |
download | scala-e3b42865333ed502b3e454c98eefbfc705e33d82.tar.gz scala-e3b42865333ed502b3e454c98eefbfc705e33d82.tar.bz2 scala-e3b42865333ed502b3e454c98eefbfc705e33d82.zip |
Created src/dotnet-library from r9912 of src/li...
Created src/dotnet-library from r9912 of src/library
Diffstat (limited to 'src/dotnet-library/scala/Product1.scala')
-rw-r--r-- | src/dotnet-library/scala/Product1.scala | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/src/dotnet-library/scala/Product1.scala b/src/dotnet-library/scala/Product1.scala new file mode 100644 index 0000000000..33b61f3b33 --- /dev/null +++ b/src/dotnet-library/scala/Product1.scala @@ -0,0 +1,50 @@ + +/* __ *\ +** ________ ___ / / ___ 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 Product1 { + def unapply[T1](x: Product1[T1]): Option[Product1[T1]] = + Some(x) +} + +/** Product1 is a cartesian product of 1 components + */ +trait Product1[+T1] extends Product { + + /** + * The arity of this product. + * @return 1 + */ + override def arity = 1 + + /** + * 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 _ => throw new IndexOutOfBoundsException(n.toString()) + } + + /** projection of this product */ + def _1: T1 + + +} |