summaryrefslogtreecommitdiff
path: root/src/library
Commit message (Collapse)AuthorAgeFilesLines
* Reworked error trees.Paul Phillips2011-09-171-141/+47
| | | | | | | Eliminated the var, the Option[Boolean]s, and the Unit-returning init method. If they were accomplishing something I could not discern, I trust hubert will now apprise me. Review by plocinic.
* Removed unused import.Grzegorz Kossakowski2011-09-121-1/+0
| | | | | No review.
* Helping Proxy equal itself.Paul Phillips2011-09-101-4/+3
| | | | | Fix for bumpy proxy equals. Closes SI-4807, no review.
* Added parens to many methods.Paul Phillips2011-09-091-43/+43
| | | | | | | | scalac -Xlint said: warning: side-effecting nullary methods are discouraged: suggest defining as `def initErrorCheck()` instead x 56. Plus a couple other linty things. No review.
* added missing getExcludedFiles in <scalac> Ant ...michelou2011-09-0822-163/+212
| | | | | | | | | added missing getExcludedFiles in <scalac> Ant task (same change is pending for <pending> Ant task). A new starr is needed for that features to work in build.xml (and other Ant scripts).
* Allow for the overriding of objects.Paul Phillips2011-09-081-70/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Various and sundry manipulations to allow for objects to be overridden when the mood is right. It is not enabled by default. The major contributor of change turned out to be the decoupling of the FINAL flag (and the "isFinal" test which examines only that flag) and the many semantics which were attributed to this interpretation of finality in different circumstances. Since objects no longer have the FINAL flag automatically applied (only top-level objects and those marked final in source code do) we need apply a more nuanced test. Fortunately there is such a nuanced test: isEffectivelyFinal, which is always true if the FINAL flag is set but also in various other circumstances. In almost every case, you should be testing "isEffectivelyFinal", not "isFinal". To enable overridable objects, use: -Yoverride-objects -Xexperimental // includes the above and others Remain to be done: working out transition logistics. Most likely this would involve bumping the scala signature version, and all objects in versions before that would be assumed final. Review by moors.
* Refinement of murmurhash implementation.Paul Phillips2011-09-086-30/+191
| | | | | | Integrates recent speed improvements to algorithm. Contributed by Ruediger Keller, no review.
* I missed inlining warnings - need to get better...Hubert Plociniczak2011-09-071-2/+2
| | | | | I missed inlining warnings - need to get better glasses. No review
* First refactoring related to Error trees.Hubert Plociniczak2011-09-071-34/+236
| | | | | | | | | | | | | | | | | | | | | | | | | | | | There are no more direct calls to context.error from Typers and Infer, so more work needs to be done to finish it for Implicits and Namers. I am pushing it to trunk so that all of you can share my pain (and complain). Please do not add any more context.error randomly in that code, instead deal with it appropriately (by creating specific error tree). I was trying to be as informative when it comes to error tree names as possible, but if you feel like changing names to something more appropriate then feel free to do so. When it comes to printing error messages I tried to follow test suite as closily as possible but obviously there were few changes to some tests (mostly positive, I believe). On my machine performance drawback was neglible but I am working on more aggressive caching to reduce the penalty of containsError() calls even more. Any suggestions welcome. At the moment the code supports both styles i.e. throwing type errors for the cases that are not yet handled and generating error trees. But in the future we will drop the former completely (apart from cyclic errors which can pop up almost everywhere). Review by odersky, extempore and anyone who feels like it.
* Offer warning when demonstrably non-side-effect...Paul Phillips2011-09-052-13/+13
| | | | | | | | Offer warning when demonstrably non-side-effecting expressions appear in statement position, which should be unintentional by definition. Threw in removal of six places with useless discarded expressions which the warning informed me about. No review.
* Removed the type parameter from sliding, no rev...Paul Phillips2011-09-034-7/+7
| | | | | Removed the type parameter from sliding, no review.
* Docspree documentation for Stream from Derek WyattJosh Suereth2011-09-021-71/+485
|
* Some great AnyVal class hierarchy documentation...Josh Suereth2011-09-029-24/+2731
| | | | | | Some great AnyVal class hierarchy documentation from Iain McGinniss. No Review.
* Document the usage and methods of scala.sys.pro...Josh Suereth2011-08-316-10/+315
| | | | | | | | | Document the usage and methods of scala.sys.process. From the first international scaladoc marathon. Contributed by: Daniel Sobral
* Gave partial function an empty member.Paul Phillips2011-08-281-2/+9
|
* Fixing up a few instances of suboptimal reversi...Paul Phillips2011-08-272-2/+2
| | | | | Fixing up a few instances of suboptimal reversing, no review.
* Replaced various now-unnecessary casts with str...Paul Phillips2011-08-273-3/+3
| | | | | | Replaced various now-unnecessary casts with straight getClass calls. Closes SI-4780, no review.
* Fixed bug in Sorted "to" not using the ordering.Paul Phillips2011-08-271-2/+1
|
* Modified scala.reflect package object not to th...Paul Phillips2011-08-232-7/+46
| | | | | | | Modified scala.reflect package object not to throw an exception at initialization time if it can't instantiate the value in question. Review by odersky.
* corrected misspelled type params (capitalized n...michelou2011-08-221-123/+140
| | | | | corrected misspelled type params (capitalized names 3x)
* Improved documentation for scala.collection.imm...Heather Miller2011-08-212-0/+41
| | | | | | | Improved documentation for scala.collection.immutable.List and scala.collection.immutable.Queue. Contributed by Matthew Pocock during the Monthly Docspree. Review by phaller.
* Improves documentation of scala.Predef.Heather Miller2011-08-201-3/+61
|
* Replaced Application with App in ScalaDoc.Kato Kazuyoshi2011-08-203-3/+3
|
* Literals now take Any as argument (used to repr...Martin Odersky2011-08-192-2/+16
| | | | | | Literals now take Any as argument (used to represent free values in reified trees).
* Removing the code which has been deprecated sin...Paul Phillips2011-08-1582-2190/+205
| | | | | | | Removing the code which has been deprecated since 2.8.0. Contributed by Simon Ochsenreither, although deleting code is such fun one hesitates to call it a contribution. Still, we will. Closes SI-4860, no review.
* A conceivably pretty bad performance bug in bui...Paul Phillips2011-08-153-4/+4
| | | | | | | | | | | | | A conceivably pretty bad performance bug in builders. SI-4821 pointed out that ArrayBuffer's ++ checks for a cheap size method by matching on IndexedSeq, but mutable.IndexedSeq, so all immutable collections are thrown in the same group as linear seqs. I went looking for other examples of this and found them, in key classes like Builder. The "type shadowing trap" is a serious issue in the collections. Closes SI-4821, no review.
* Linked Manifests up with Reflection.Martin Odersky2011-08-156-17/+109
|
* Reversed the values of "is" and "is not" in rec...Paul Phillips2011-08-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Reversed the values of "is" and "is not" in recent for comprehension deprecation. DO NOT BLOW HATCH REPEAT DO NOT BLOW HATCH "Roger! Hatch blown." Events reveal it was all baby, no bathwater. It turns out that the specification is merely a document, not infallible holy writ as we had all previously believed. So it is not the ABSENCE of val in a for comprehension assignment which is deprecated, it is the PRESENCE of val. Summarizing again, more accurately perhaps: for (x <- 1 to 5 ; y = x) yield x+y // THAT's the one for (val x <- 1 to 5 ; y = x) yield x+y // fail for (val x <- 1 to 5 ; val y = x) yield x+y // fail for (x <- 1 to 5 ; val y = x) yield x+y // deprecated No review.
* Optimizations for Seq's implementations of sequ...Paul Phillips2011-08-091-69/+214
| | | | | | Optimizations for Seq's implementations of sequence search algorithms. Contributed by Rex Kerr. Closes SI-4828, no review.
* Moved the classes and objects which are defined...Paul Phillips2011-08-095-143/+141
| | | | | | | | | | | | | | | | | Moved the classes and objects which are defined in package objects out. In principle this is something you should be able to do. In practice right now it means bugs, to no advantage. I also deprecated RangeUtils, an unused, undocumented trait in the immutable package. It seems like there is a ton of stuff in the public API which should not be in the public API. It's really tedious having to go through a whole deprecation cycle to dispose of what could have been an internal-only class (and was presumably intended as such given the the absence of documentation.) No review.
* Hugely improves Regex documentation.Heather Miller2011-08-091-19/+90
|
* Improves Benchmark documentation.Heather Miller2011-08-091-1/+2
|
* A big improvement to Ordering documentation.Heather Miller2011-08-091-47/+109
|
* Adds more documentation to Array.Heather Miller2011-08-091-5/+12
|
* Adds documentation to the scala.math package ob...Heather Miller2011-08-091-10/+48
| | | | | | Adds documentation to the scala.math package object. Contributed by Christian Krause. No review.
* Removed unused import in collection.immutable.W...Grzegorz Kossakowski2011-08-091-1/+0
| | | | | | | Removed unused import in collection.immutable.WrappedString. No review.
* Fixing all the tests and source which still use...Paul Phillips2011-08-081-3/+2
| | | | | | | Fixing all the tests and source which still use the old for comprehension syntax with vals where there are no vals and no vals where there are vals. No review.
* Fix memory leak in SyncVar. Review by prokopecPhilipp Haller2011-08-011-9/+11
|
* Sped up traversal over mutable maps by a factor...Paul Phillips2011-08-014-38/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sped up traversal over mutable maps by a factor of two. There was this comment in HashTable explaining why foreach was implemented in terms of iterator. /* * We should implement this as a primitive operation over the * underlying array, but it can cause a behaviour change in edge cases * where: * - Someone modifies a map during iteration * - The insertion point is close to the iteration point. */ Item 1: foreach and iterator didn't behave the same if the map was mutated in the midst of the traversal anyway. Item 2: protecting some particular undefinition of inherently undefined behavior is a pretty unconvincing reason to impose a 2x penalty on foreach. Here are the before/after times for traversing the keys with foreach vs. with iterator. Same impact on values and on the map itself. The benchmark code is included in this commit. before: foreach 143700900 iterator 143848900 after: foreach 67024400 iterator 144890300 Respecting the fact that this might be causing some behavior somewhere to change, even though it would be pretty sick to be relying upon it, ** ATTENTION! POSSIBLE BEHAVIOR CHANGE! ** Review by dragos.
* Working on jar creation infrastructure.Paul Phillips2011-08-011-0/+10
| | | | | | | | | | | | | | | | | | output generation (but only then, since otherwise we're not creating the jar): 1) -Xmain-class foo.Bar will give the jar a Main-Class of foo.Bar 2) Alternatively, if there is only one runnable program, that will be the Main-Class 3) Always, the jar's manifest will have an entry for Scala-Compiler-Version. Not very relatedly, a warning is now issued when a module has a main method but a runnable program will not be generated. Closes SI-4861. This represents an opening step toward automatically recognizing mismatched bytecode situations: coarse, but useful and safe. Review by mirco.
* LiftCode works again, now integrated with new r...Martin Odersky2011-07-301-2/+2
| | | | | | | | LiftCode works again, now integrated with new reflection library. Other changes: def Literal(x: Any) has been deprecated, and all its uses removed. Modifiers has lost positions as fourth case class argument; is now a field, mirroring Tree.pos (this removes junk in patterns and makes reification simpler). Review by extempore.
* Getting LiftCode to work.Martin Odersky2011-07-301-1/+1
|
* - Update Scaladoc for LinkedList and for some o...Paul Phillips2011-07-297-40/+311
| | | | | | | | | | - Update Scaladoc for LinkedList and for some of the functions/operators - that it inherits. Completed Scaladoc for append Added example - in GenSeqLike for apply. Added $collectExample to collect in - GenTraversableLike and supplied an actual example in LinkedList Contributed by Donald McLean.
* Move vector descrition from the obejct to the c...Paul Phillips2011-07-291-8/+8
| | | | | | | | Move vector descrition from the obejct to the class, where it actually makes sense. Preserve previously existing attribute definitions. Contributed by Daniel C. Sobral
* Following up on things that -Xlint told me, som...Paul Phillips2011-07-299-63/+47
| | | | | | | | | | | | | | | Following up on things that -Xlint told me, sometimes because Mr. Linty was being sensible and other times just to shut him up so we can hear better in the future. - made xml.Equality public because it occurs in public method signatures - made some actor classes with inaccessible-unoverridable methods final - eliminated a bunch of "dead code follows" warnings by deleting the dead code which really did follow - improved the reliability of warnings about inaccessible types For the changes in actors, review by phaller.
* First steps towards liftingMartin Odersky2011-07-293-8/+8
|
* Added two new compiler options:Paul Phillips2011-07-291-1/+1
| | | | | | | | | | | | | | | -Ywarn-adapted-args // also included in -Xlint -Yno-adapted-args The former warns when a () is inserted or an argument list is implicitly tupled. The latter errors under the same conditions. Using these options I found several bugs in the distribution which would otherwise be nearly impossible to spot. These bugs were innocuous (I think) but similar bugs could easily be (and have been) otherwise. Certain particularly threatening scenarios are at minimum warned about regardless of options given. Closes SI-4851, no review.
* Adding the missing ParMap and GenMap methods.Aleksandar Pokopec2011-07-266-3/+253
| | | | | No review.
* Updated documentation for testing.Benchmark.Heather Miller2011-07-241-1/+8
|
* Start of an attempt to abstract above some hard...Paul Phillips2011-07-232-2/+13
| | | | | | | | Start of an attempt to abstract above some hardcoded name mangling decisions so they can be modified, something we need to do to fix long-standing problems with inner classes. It's not easy. This commit doesn't actually change much, it's primarily setup. No review.