| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
| |
Removed some identical code from the collections classes in hopes of
finding some consistency in collections equality. Added more test cases
to the sequenceComparisons test.
|
|
|
|
|
|
| |
Removed Vector's indexOfSeq method in favor of the superclass
implementation, which already discriminates based on hasDefiniteSize.
|
| |
|
|
|
|
|
|
|
|
|
| |
Now that there's a KMP implementation in Seq, removed the Char-specific
one from StringBuilder. Added lastIndexOfSeq
method to SequenceTemplate - for StringBuilder primarily,
but available to be enjoyed by all the world's sequences.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
A start on a more comprehensive test suite for sequences. It performs
3600 different tests attempting to exercise the potentially buggy
variations of startsWith, endsWith, indexOfSeq, and sameElements.
And, a KMP implementation of indexOfSeq which in addition to being a
lot faster for definite sized sequences, should give the wrong answer
somewhat less frequently.
|
|
|
|
|
|
|
|
|
| |
scala> Vector(1,2,3) startsWith List("I am a Sumerian shapeshifting
destruction god.")
res0: Boolean = true
...is fixed.
|
|
|
|
|
|
|
|
| |
scala> immutable.Vector(1,2,3) endsWith immutable.Vector(2,3)
res0: Boolean = false
...is fixed.
|
|
|
|
|
|
|
|
| |
scala> List(1,2,3) endsWith List(2, "I AM GOZER THE DESTROYER")
res0: Boolean = true
... is fixed.
|
| |
|
|
|
|
|
| |
contained whitespaces. This simple change fixes that.
|
| |
|
|
|
|
|
|
|
|
| |
Altered some invocations of Array.copy to use compat.Platform.arraycopy
instead, because profiling indicated a frightening amount of time being
spent in java.lang.Class.isArray (mostly stemming from ensureCapacity in
StringBuilder.)
|
| |
|
|
|
|
|
| |
small improvements concerning positions and completions
|
|
|
|
|
|
| |
Two small performance fixes which shaved 40 seconds off clean->test
time.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Added ControlException marker trait and update various exceptions to
mix it in; the typer now correctly propagates ControlExceptions rather
than reporting them; the IDE reports attempts to log ControlExceptions;
Global.signalDone no longer leaks ValidateErrors back into the typer;
the set of compiler options offered by the IDE has been updated.
|
| |
|
|
|
|
|
|
| |
Fix for a RangePosition overlap bug with guards in for comprehensions;
added tree node unique id to output in tree browser.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Enhanced repl based debugger to use manifests and try to get a usable
type out of it. It works for at least a useful subset of the types which
one might want to inspect.
|
|
|
|
|
| |
made streams and views more lazy by always skipping builder
|
|
|
|
|
|
| |
Fixed a couple of position bugs; made validation output a bit more
informative and readable.
|
|
|
|
|
|
| |
Added -Yide-debug option to exercise the interactive compiler from the
command-line; made validation errors a bit more informative.
|
| |
|
| |
|
|
|
|
|
|
| |
shaves for me 2-2.5 minutes off the time to run "ant test.suite" from
locker.
|
|
|
|
|
|
|
| |
Trying to make typechecker faster by (1) new subtyping (2) better
implicit caches. Disallowed '42 as a symbol. Added cache method to
Mutable Maps. Better complietion in interactive.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
Making most of the symbols in Definitions into stable identifiers.
Removed some duplication and did some organization.
|
| |
|
| |
|
|
|
|
|
|
|
| |
targets the mixing rule which generates switch statements. We should
soon be generating switches for quite a few more cases than we are at
present.
|
|
|
|
|
|
|
| |
Implementation and test cases for canEqual method in case classes. Now
the autogenerated equality method inquires with the argument as to
whether other.canEqual(this) before returning true.
|
|
|
|
|
|
|
| |
The presently salvageable portion of my attempt to fix bugs #425 and
#816 (which I have indeed fixed, but a bazillion other test cases broke
so the fix is commented out until I can make everyone happy at once.)
|
|
|
|
|
|
|
| |
I can no longer endure having one of the fundamental pattern matcher
variables (which incidentally holds multiple values) being named "temp".
temp -> tvars, row -> rows.
|
|
|
|
|
| |
Made NamespaceBinding a case class; addresses ticket #2138.
|
| |
|
|
|
|
|
|
| |
More on the pattern matcher: continuing to give things names I can
understand and commenting what exactly things do.
|
| |
|
|
|
|
|
|
| |
Annotations on type parameters are added to the initial symbols, not
only skolems. This fixes specialized methods
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
one long-standing bug which actually had a test case testing its
bugginess (which is to say, when I fixed the bug, the test case failed.)
This:
- def doMatch4(xs:Seq[Char]) = xs match {
- case Seq(x, y, _*) => x::y::Nil
- case Seq(x, y, z, w) => List(z,w) // redundant!
- }
...should never have compiled - which must have been recognized
on some level given the "redundant!" comment, but it never made
it into neg/.
|