summaryrefslogtreecommitdiff
path: root/src/library-aux
Commit message (Collapse)AuthorAgeFilesLines
* SI-8129 Make Object#== override Any#==Jason Zaugg2014-02-101-2/+2
| | | | | | | | | | | | | | | | | | | | And the same for != If we tried to declare these signatures in non-fictional classes, we would be chastised about collapsing into the "same signature after erasure". This will have an influence of typing, as the typechecking of arguments is sensitive to overloading: if multiple variants are feasible, the argument will be typechecked with a wildcard expected type. So people inspecting the types of the arguments to `==` before this change might have seen an interesting type for `if (true) x else y`, but now the `If` will have type `Any`, as we don't need to calculate the LUB. I've left a TODO to note that we should really make `Any#{==, !=}` non-final and include a final override in `AnyVal`. But I don't think that is particularly urgent.
* Updated copyright to 2013Carlo Dapor2013-01-024-4/+4
|
* SI-6399 Adds API docs for Any and AnyValHeather Miller2012-11-021-0/+19
| | | | | - Updates AnyVal docs to address value classes. - Updates Any docs to address universal traits.
* SI-5784 Scaladoc: {Abstract,Alias} type templatesVlad Ureche2012-07-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Normally scaladoc won't generate template pages for anything other than packages, classes, traits and objects. But using the @template annotation on {abstract,alias} types, they get their own page and take part as full members in the diagrams. Furthermore, when looking for the companion object, if a value of type T is in scope, T will be taken as the companion object (even though it might be a class) All templates, including types are listed on the left navigation pane, so now adding @template to String can get scaladoc to generate (a no-comments) page for java.lang.String. The {abstract, alias} type icons need to be updated -- I just took the class icons and added a small x to them -- but they shoud be something else (maybe an underscore?)i TO USE THIS PATCH: <pre> /** @contentDiagram */ // tells scaladoc to create a diagram of the // templates contained in trait Base trait Base { /** @template */ // tells scaladoc to create a page for Foo type T < Foo trait Foo { def foo: Int } } /** @contentDiagram */ trait Api extends Base { /** @template */ override type T <: FooApi trait FooApi extends Foo { def bar: String } } </pre>
* Tweaks to Any and AnyRef documentation, courtes...Heather Miller2011-10-182-2/+5
| | | | | | Tweaks to Any and AnyRef documentation, courtesy of Seth Tisue. No review.
* Donated some parens to Any.Paul Phillips2011-10-151-4/+4
| | | | | And a touch of documentation correctness. Closes SI-5077, no review.
* A total rewrite of "runtimeClass", discarding t...Paul Phillips2011-06-221-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A total rewrite of "runtimeClass", discarding the user-space approach in favor of simply fixing getClass. def f1 = 5.getClass // Class[Int] def f2 = (5: AnyVal).getClass // Class[_ <: AnyVal] def f3 = (5: java.lang.Integer).getClass // Class[_ <: java.lang.Integer] class A class B extends A def f1 = (new B: Any).getClass().newInstance() // Any def f2 = (new B: AnyRef).getClass().newInstance() // AnyRef def f3 = (new B: A).getClass().newInstance() // A def f4 = (new B: B).getClass().newInstance() // B But that's not all! def f0[T >: B] = (new B: T).getClass().newInstance() def f5 = f0[Any] // Any def f6 = f0[AnyRef] // AnyRef def f7 = f0[A] // A def f8 = f0[B] // B Closes #490, #896, #4696. Review by moors. (Note: I think this is pretty good, but picky review requested.)
* Fix documentation of ## regarding null.##, than...Paul Phillips2011-05-191-1/+3
| | | | | Fix documentation of ## regarding null.##, thanks ymasory, no review.
* Deleted SourcelessComments.Paul Phillips2011-04-075-0/+277
Nothing and Null with improved documentation of their particulars and convinced scaladoc to parse them without leaving scalac institutionalized. Now rather than seeing our hardcoded documentation strings bitrot in a shadowy flight from classes which do not exist, we are championing the cause of the innocent and powerless. Nothing and Null aren't above the law! So now any responsible party can fire up their text editor and go to town on Nothing.scala. As I'm sure they will. Review by malayeri.