summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #1217 from axel22/issue/6294Paul Phillips2012-09-042-2/+19
|\ | | | | Fix SI-6294.
| * Fix SI-6294.Aleksandar Prokopec2012-08-302-2/+19
| |
* | Merge pull request #1192 from jsuereth/deprecate/low-hangingPaul Phillips2012-09-047-0/+7
|\ \ | | | | | | Deprecate unmaintained/old classes for removal in 2.11
| * | Deprecate unmaintained/old classes for removal in 2.11Josh Suereth2012-08-247-0/+7
| | |
* | | Merge pull request #1242 from paulp/topic/dynamic-anyvalJosh Suereth2012-09-033-5/+31
|\ \ \ | | | | | | | | Made Dynamic extend Any.
| * | | Made Dynamic extend Any.Paul Phillips2012-09-033-5/+31
|/ / / | | | | | | | | | So it can be used in value classes.
* | | Merge pull request #1235 from paulp/topic/beautify-typedPaul Phillips2012-09-021-140/+51
|\ \ \ | | | | | | | | Formatting cleanup in def typed.
| * | | Formatting cleanup in def typed.Paul Phillips2012-09-011-140/+51
| | | | | | | | | | | | | | | | As seen on scala-internals.
* | | | Merge pull request #1202 from scalamacros/topic/reflectionPaul Phillips2012-09-0217-53/+68
|\ \ \ \ | | | | | | | | | | further polishing of reflection
| * | | | definitive way to learn if a symbol is a val/varEugene Burmako2012-08-276-9/+11
| | | | | | | | | | | | | | | | | | | | | | | | | I think `isVal` and `isVar` are the right names, because they exactly map on Scala syntax.
| * | | | Exposes Symbol.sourceModuleEugene Burmako2012-08-272-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As discussed, this is not the best API to expose, because this is an implementation detail that might change. However the ship has sailed. We're already imposing the moduleClass <-> sourceModule quirk to the users of our API: Evidence: http://stackoverflow.com/questions/12128783. There are reflection tasks that cannot be pulled without the knowledge of this implementation detail, so we shouldn't pretend that we can change it on a whim and not break anything. Hence I propose to add sourceModule to the public contract and bear the potential consequences.
| * | | | rehash of source file information for SymbolEugene Burmako2012-08-272-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Symbol.pos is moved to macros.Universe, because it's empty at runtime. Also added Symbol.associatedFile, because it has valid usages during runtime. When reflecting one might want to get to a classfile of the symbol and then analyze it to e.g. decompile the bytecode or find out the associated src file.
| * | | | removes AbstractFileApiEugene Burmako2012-08-279-39/+17
| | | | | | | | | | | | | | | | | | | | | | | | | no longer necessary, since scala.tools.nsc.io.AbstractFile has been long moved to scala-reflect.jar
| * | | | Exposes ToolBox.classLoaderEugene Burmako2012-08-272-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | By giving ToolBox.mirror the correct type and constructing the underlying mirror from a proper classloader, we improve user experience w.r.t runtime code generation. Direct motivator: http://stackoverflow.com/questions/12122939, in which instances of a toolbox-generated class are accessed with Scala reflection.
| * | | | exposes MethodSymbol.isPrimaryConstructorEugene Burmako2012-08-271-0/+3
| | | | | | | | | | | | | | | | | | | | Doesn't seem to be inferrable from the API we expose right now
| * | | | Exposes Symbol.deSkolemize to macrosEugene Burmako2012-08-271-0/+2
| | | | |
| * | | | adds Symbol.isJavaEugene Burmako2012-08-272-0/+5
| | | | | | | | | | | | | | | | | | | | Doesn't seem to be inferrable from the API we expose right now
| * | | | adds ClassSymbol.baseClassesEugene Burmako2012-08-272-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sure this stuff is also declared in Type.baseClasses, but this is one of the hot paths in reflection (e.g. like ClassSymbol.typeParams), so I think it's justified to have it as a dedicated method. Unfortunately we cannot remove Type.baseClasses, because it includes ridiculously involved calculation of base classes for compound types.
| * | | | exposes Symbol.childrenEugene Burmako2012-08-272-0/+6
| | |_|/ | |/| | | | | | | | | | As requested in http://stackoverflow.com/questions/12078366/
* | | | Merge pull request #1231 from paulp/issue/6273Josh Suereth2012-09-025-4/+38
|\ \ \ \ | | | | | | | | | | Fix for SI-6273, repl string interpolation.
| * | | | Fix for SI-6273, repl string interpolation.Paul Phillips2012-09-015-4/+38
| | |/ / | |/| | | | | | | | | | | | | | | | | | As usual the hard part is tracing through all the needless abstraction. Begone, 25 layers of parsing error issuing methods!
* | | | Merge pull request #1232 from paulp/topic/210-errors-and-warningsJosh Suereth2012-09-0222-158/+359
|\ \ \ \ | |/ / / |/| | | Topic/210 errors and warnings
| * | | Better errors for Any/AnyRef issues.Paul Phillips2012-09-0116-157/+322
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When an error occurs because some type does not conform to AnyRef (and an AnyRef-derived type would have sufficed) try to say something useful about the situation. This commit also initializes scope members before printing error messages because the + version seems more useful than the - version (taken from one of the checkfile diffs.) - def <init>: <?> - def methodIntIntInt: <?> + def <init>(): X + def methodIntIntInt(x: scala.Int,y: scala.Int): scala.Int
| * | | Fix for SI-6263, futile adaptation.Paul Phillips2012-09-013-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | Don't try to implicitly convert an unstable prefix to a stable one by applying a view. As the matrix spoon kid says, "that's impossible."
| * | | Suppressed 'possible cause' mis-warning.Paul Phillips2012-09-015-3/+23
|/ / / | | | | | | | | | | | | I have seen this warning a bunch of times and it has not yet been close to right.
* | | Merge pull request #1227 from paulp/issue/6034Paul Phillips2012-09-014-3/+11
|\ \ \ | | | | | | | | Fix for SI-6034, covariant value classes.
| * | | Fix for SI-6034, covariant value classes.Paul Phillips2012-08-314-3/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | My summary in the ticket was incorrect. The problem was that the class type parameters were being cloned for the method and being allowed to keep their variance. I threw in an assertion for anyone attempting to create a method type with variant type parameters, because hey, why should we allow such madness.
* | | | Merge pull request #1201 from axel22/issue/4581Josh Suereth2012-09-016-6/+50
|\ \ \ \ | | | | | | | | | | Fix SI-4581.
| * | | | Fix SI-4581.Aleksandar Prokopec2012-08-276-6/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Specifically, the final flag on the generated static field is no longer ommitted. Fix 2 failing test-cases.
* | | | | Merge pull request #1222 from jsuereth/fix/sbt-buildJosh Suereth2012-09-015-11/+15
|\ \ \ \ \ | | | | | | | | | | | | SBT build now works with SBT 0.12.
| * | | | | SBT build now works with SBT 0.12.Josh Suereth2012-08-315-11/+15
| | | | | | | | | | | | | | | | | | | | | | | | Also fixed partest explosion that happened after partest redesign.
* | | | | | Merge pull request #1225 from jsuereth/fix/si-6290Josh Suereth2012-09-013-7/+18
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fixes SI-6290 by creating real instnaces of language features.
| * | | | | | Fixes SI-6290 by creating real instnaces of language features.Josh Suereth2012-08-313-7/+18
| |/ / / / /
* | | | | | Merge pull request #1228 from retronym/ticket/4270-xlogimplicitsPaul Phillips2012-09-014-4/+29
|\ \ \ \ \ \ | |_|_|/ / / |/| | | | | More useful -Xlog-implicits output.
| * | | | | More useful -Xlog-implicits output.Jason Zaugg2012-09-014-4/+29
|/ / / / / | | | | | | | | | | | | | | | | | | | | The test exercises the most important case, when implicits are invalidated through shadowing. (See SI-4270)
* | | | | Merge pull request #1213 from paulp/topic/anyvalJosh Suereth2012-08-3027-130/+140
|\ \ \ \ \ | | | | | | | | | | | | Expanded the reach of value classes.
| * | | | | Two more value classes.Paul Phillips2012-08-292-53/+50
| | | | | | | | | | | | | | | | | | | | | | | | Tuple2Zipped and Tuple3Zipped.
| * | | | | Expanded the reach of value classes.Paul Phillips2012-08-2925-77/+90
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Now extending AnyVal: - RichInt, RichDouble, etc. - ArrayOps.ofRef, ofBoolean, etc - StringAdd - StringFormat The rest of it is the changes necessary to enable those.
* | | | | Merge pull request #1212 from dragos/topic/worksheet-instrumenterJosh Suereth2012-08-302-5/+12
|\ \ \ \ \ | | | | | | | | | | | | Two fixes for the worksheet instrumenter
| * | | | | Two fixes for the worksheet instrumenterMartin Odersky2012-08-292-5/+12
| |/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (1) Handle empty worksheets (2) Handle for expressions Review by @dragos (cherry picked from commit 20dc9cd7848863097b07d1cb84ae3f729f7e94da)
* | | | | Merge pull request #1160 from rklaehn/SI-6220Josh Suereth2012-08-302-10/+121
|\ \ \ \ \ | | | | | | | | | | | | Si 6220
| * | | | | Added test that should cover all code paths of the changes done in SI-6220Ruediger Klaehn2012-08-181-0/+92
| | | | | | | | | | | | | | | | | | | | | | | | This test will pass even with an older version of the scala library, since as mentioned this is just a performance improvement.
| * | | | | Improve efficiency of updatedRuediger Klaehn2012-08-181-10/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Added utility method to create a HashTrieSet with two leaf HashSets with different hash Used said utility method instead of creating a temorary HashTrieSet with an empty elems array Added assertions to HashTrieSet to validate tree
* | | | | | Merge pull request #1169 from rklaehn/SI-6261Josh Suereth2012-08-303-40/+182
|\ \ \ \ \ \ | | | | | | | | | | | | | | Si 6261
| * | | | | | Commented out assertionsRuediger Klaehn2012-08-281-3/+3
| | | | | | |
| * | | | | | Added test to ensure that ListMap.tail is O(1)Ruediger Klaehn2012-08-251-0/+7
| | | | | | |
| * | | | | | Made ListMap.tail O(1) instead of O(N)Ruediger Klaehn2012-08-251-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | That way it is possible to check if a ListMap has one element by checking x.tail.isEmpty. Size is O(1), so size==1 won't do!
| * | | | | | Extended test to also check proper handling of collisionsRuediger Klaehn2012-08-211-0/+91
| | | | | | |
| * | | | | | Added test that tests that correct classes are being created when removing ↵Ruediger Klaehn2012-08-211-0/+32
| | | | | | | | | | | | | | | | | | | | | | | | | | | | elements
| * | | | | | Added assertions for tree consistencyRuediger Klaehn2012-08-201-0/+4
| | | | | | |