summaryrefslogtreecommitdiff
path: root/src/build/genprod.scala
Commit message (Collapse)AuthorAgeFilesLines
* Various addenda to soc's patch: regenerating Pr...Paul Phillips2011-04-141-2/+2
| | | | | | | Various addenda to soc's patch: regenerating Product/Tuple/Function classes and AnyVal sources, making versioning consistent, etc. Closes #4477, no review.
* Adds "since" field to @deprecated.Paul Phillips2011-04-141-2/+2
| | | | | | for the patch, as it's a change I've always wanted. Moving up in the glamorous world of scala commits! No review.
* Addressing most of the warnings revealed by the...Paul Phillips2011-03-301-6/+7
| | | | | | Addressing most of the warnings revealed by the patch to warn about unknown scaladoc variables. Updated and reran genprod. No review.
* Moved unlift to the Function companion object, ...Paul Phillips2011-02-201-91/+74
| | | | | | | | | | | | | | Moved unlift to the Function companion object, which might have been better in the first place. Had to make a minor change to genprod, and then I couldn't escape that unscathed. Finished the not very complete undertaking I found there to update the scaladoc. Lots of little changes to the generated text and code. I changed genprod to only put a unique stamp on Function0 so we can stop having a 100 file diff everytime an i is dotted somewhere. Closes #3825, no review.
* Updated copyright notices to 2011Antonio Cunei2011-01-201-2/+2
|
* The initial implementation of TraversableOnce c...Paul Phillips2010-11-291-2/+2
| | | | | | | | | | | | | | | | | | The initial implementation of TraversableOnce could not supply concrete methods or even signatures for map and flatMap because they have different signatures in Iterator and TraversableLike. But we can take another approach which works out as nicely: 1) Create implicits which install those methods and flatten on TraversableOnce instances. 2) Generalize the signatures of flatten and flatMap to work with A => TraversableOnce[B] instead of A => Traversable[B]. And voila, you can mix and match Iterators and Traversables in a for comprehension, map, flatMap, and flatten, without the tedious process of sprinkling .iterator or .toList around to appease the compiler. No review.
* Applied patch from davetron5000, improving docu...Iulian Dragos2010-11-241-18/+53
| | | | | | Applied patch from davetron5000, improving documentation on ProductN and FunctionN traits. Closes #4021.
* Some issues with Tuple2/3.Paul Phillips2010-10-271-40/+6
| | | | | | | | | foreach method in Tuple3, and both classes have what is now a redundant zip method which is also unfortunately completely strict in a not entirely fixable fashion. So "zip" is deprecated in favor of zipped. Closes #3526, but the code which closes that is primarily found in r23228. No review.
* Documentation being generated by genprod was pr...Paul Phillips2010-10-161-62/+49
| | | | | | | Documentation being generated by genprod was pretty busted both in terms of formatting and correctness. Spruced it up. Eliminated some of the more distracting HTML entities in compiler source. No review.
* An overhaul of the collection-oriented methods ...Paul Phillips2010-10-111-97/+123
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An overhaul of the collection-oriented methods in Tuple2/Tuple3 (which still need to be taken all the way to Tuple5.) * Zip semantics: zip and zipped now properly terminate when any collection runs out of elements, even if others are infinite. In addition, short circuiting methods (exists and forall) will terminate if the condition is met, even in the presence of infinity. Example: scala> val ys = Stream from 1 ys: scala.collection.immutable.Stream[Int] = Stream(1, ?) scala> (ys, ys).zipped forall ((x, y) => x+y < 100) res0: Boolean = false scala> (ys, ys).zipped exists ((x, y) => x+y > 100) res1: Boolean = true * There are implicits converting Zipped2/3 to Traversable to expose all the methods which aren't defined in an arity-specific way in the tuple classes. I have mixed feelings about putting these in Predef; but if there is another way to make them visible by default I wasn't able to find it. Example putting said implicit to use: scala> (ys, ys, ys).zipped find { case (x, y, z) => x+y+z > 1000 } res0: Option[(Int, Int, Int)] = Some((334,334,334)) Already reviewed by moors, so no review.
* Proposed implementation of 'unlift' on Function...Paul Phillips2010-09-091-0/+13
| | | | | | | Proposed implementation of 'unlift' on Function1, the inverse function of PartialFunction#lift. Review by rytz and other interested parties. References #3825, but not closing until this is further considered.
* map2 => zipped, no reviewLukas Rytz2010-09-091-5/+5
|
* Removed more than 3400 svn '$Id' keywords and r...Antonio Cunei2010-05-121-2/+0
| | | | | Removed more than 3400 svn '$Id' keywords and related junk.
* Regenerated FunctionN, AbstractFunctionN, etc.Iulian Dragos2010-04-291-4/+4
| | | | | | | to properly specialize on primitive types (scala.Int, instead of scala.runtime.Int). Now closures should be indeed specialized. No review.
* Auto-generate scala.runtime.AbstractFunctionN c...Iulian Dragos2010-04-121-8/+305
| | | | | | | | Auto-generate scala.runtime.AbstractFunctionN classes. Moved zipped* methods in Tuple1/2 in genprod, so that regenerating tuples does not lose these methods. Added @specialized annotations into genprod for the same reason.
* Adjectified some parts of speech as discussed o...Paul Phillips2010-01-181-8/+8
| | | | | | | Adjectified some parts of speech as discussed on the mailing list. The methods to call on FunctionN are "curried" and "tupled" with "curry" deprecated and "tuple" gone. Closes #2907. Review by community.
* Updated copyright notices to 2010Antonio Cunei2009-12-071-2/+2
|
* Built out genprod to create a tuple method for ...Paul Phillips2009-12-021-5/+20
| | | | | | Built out genprod to create a tuple method for reach function alongside its curry method. Generated new FunctionNs.
* fix cyclic reference errors in scaladoc.Lukas Rytz2009-11-041-2/+1
|
* [no content change] Fixed all SVN properties: m...Gilles Dubochet2009-09-241-1/+1
| | | | | | | | [no content change] Fixed all SVN properties: mimes, EOL, executable. Id expansion is consistently enabled for Scala/Java/C# sources in 'src/' and consistently disabled and removed from everywhere else: there should not be any dead Id tags anymore.
* Newly generated Tuple/Product/Function classes ...Paul Phillips2009-06-171-42/+40
| | | | | | Newly generated Tuple/Product/Function classes from new genprod, plus a couple minor tweaks to genprod to keep tests happy.
* Close to complete rewrite of genprod so it's ea...Paul Phillips2009-06-171-245/+229
| | | | | | Close to complete rewrite of genprod so it's easier to modify and leverage for other exciting Foo1-Foo22 classes.
* In "Iterable" and in all its subclasses, "itera...Gilles Dubochet2009-05-271-1/+1
| | | | | | In "Iterable" and in all its subclasses, "iterator" replaces "elements" (and assorted changes).
* Updated copyright notices to 2009Antonio Cunei2009-01-091-4/+4
|
* Modified the implementation of curry so that forGeoffrey Washburn2008-04-231-5/+9
| | | | | | | | | FunctionN, where N > 4, many fewer classes are created statically at the expense of creating more objects dynamically (which seems reasonable given how common such functions are likely to be). This also allows for curry in FunctionN for N > 8 without running into the filename length restriction.
* Really fixed curry this time.Geoffrey Washburn2008-04-221-1/+1
|
* No curry for you! (If you are FunctionN, for N ...Geoffrey Washburn2008-04-221-1/+1
| | | | | No curry for you! (If you are FunctionN, for N < 2 and N > 16)
* Corrected uncurry to be called curry.Geoffrey Washburn2008-04-221-4/+12
| | | | | Generalized curry to FunctionN for N >= 2
* Improvements to genprodGeoffrey Washburn2008-04-161-19/+37
| | | | | Added uncurry to Function2, swap to Tuple2.
* anonfuns now accept up to 22 argsmichelou2008-02-191-25/+21
|
* switched to Scala implementation of StringBuildermichelou2008-02-061-4/+4
|
* updated element/arity to productElement/product...michelou2007-04-191-17/+1
| | | | | updated element/arity to productElement/productArity
* updated for-comprehension syntaxmichelou2007-04-191-15/+15
|
* renamed arity=>productArity,element=>productEle...Burak Emir2007-04-121-2/+26
| | | | | renamed arity=>productArity,element=>productElement
* regenerated TupleN classes so that their toStri...Adriaan Moors2007-02-201-2/+2
| | | | | | regenerated TupleN classes so that their toString matches the (...) tuple syntax update .check files that contained tuple toString output
* finalized the TupleN ProductN change (last dist...Burak Emir2007-01-031-2/+2
| | | | | | | finalized the TupleN ProductN change (last dist: no automatic addition of ProductN, this dist: manual addition of ProductN to TupleN by means of modified genprod tool)
* * NodeSeq plays with new Seq[A]Burak Emir2007-01-031-2/+2
| | | | | * new starr, because of Tuple/Product change and collections
* * TupleN extends ProductN, again (genprod updated)Burak Emir2007-01-021-10/+9
| | | | | | | | | | * better comments and parameter names in scala.xml.MetaData typechecker * now handles special cases (n=0, n=1) for unapply correctly * * even if one returns a Option[Product1[T]] * typechecker now handles unapply return types correctly * * e.g. when returning Option[{A,B}] instead of Option[Product2[A,B]]
* added comma in generated Tuple1.toString methodmichelou2006-12-121-14/+31
|
* more tuplesBurak Emir2006-12-121-3/+6
|
* added infix types and {...} syntax for tuples.Martin Odersky2006-12-111-1/+1
| | | | | changed a confusing error message "value this is not a member of T".
* updated genprod.scala (Function1)michelou2006-12-081-38/+51
|
* fixed encoding in Scala commentmichelou2006-11-301-10/+14
|
* oopsBurak Emir2006-11-291-1/+1
|
* updated method 'andThen' in generated Function1...michelou2006-11-291-44/+60
| | | | | updated method 'andThen' in generated Function1.scala
* more fun with positions, and updated docBurak Emir2006-11-281-2/+9
|
* more products, plus some static optimization in...Burak Emir2006-11-271-0/+267
more products, plus some static optimization in pattern matcher