Skip to content

Instantly share code, notes, and snippets.

@paulp
Created August 12, 2011 02:10
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paulp/1141288 to your computer and use it in GitHub Desktop.
Save paulp/1141288 to your computer and use it in GitHub Desktop.
the phillips commission reports on ::
Searching for changes to scala/collection/immutable/$colon$colon.class ...
Found 80 candidate revisions.
=== r17680 ===
commit e0f5e6e40716fbebee61a88ad998da3aa0eaea22
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri May 8 16:33:15 2009 +0000
massive new collections checkin.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@17680 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
new file mode 100644
index 0000000..8da5b91
--- /dev/null
+++ b/scala/collection/immutable/$colon$colon.class
@@ -0,0 +1,197 @@
+Compiled from "List.scala"
+public final class scala.collection.immutable.$colon$colon extends scala.collection.immutable.List implements scala.ScalaObject,scala.Product,java.io.Serializable{
+public static final long serialVersionUID;
+ Signature: J
+
+private scala.collection.immutable.List tl;
+ Signature: Lscala/collection/immutable/List;
+
+private java.lang.Object hd;
+ Signature: Ljava/lang/Object;
+
+public static {};
+ Signature: ()V
+ Code:
+ : ldc2_w ##; //long -8476791151983527571l
+ : putstatic ##; //Field serialVersionUID:J
+ : return
+
+public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ Code:
+ : aload_1
+ : putfield ##; //Field hd:Ljava/lang/Object;
+ : aload_2
+ : putfield ##; //Field tl:Lscala/collection/immutable/List;
+ : invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
+ : return
+
+public scala.collection.generic.TraversibleTemplate tail();
+ Signature: ()Lscala/collection/generic/TraversibleTemplate;
+ Code:
+ : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
+ : areturn
+
+public scala.collection.generic.LinearSequenceTemplate tail();
+ Signature: ()Lscala/collection/generic/LinearSequenceTemplate;
+ Code:
+ : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
+ : areturn
+
+public java.lang.Object productElement(int);
+ Signature: (I)Ljava/lang/Object;
+ Code:
+ : iload_1
+ : istore_2
+ : iload_2
+ : 46;
+ : 39;
+ default: 24 }
+ : new ##; //class java/lang/IndexOutOfBoundsException
+ : dup
+ : iload_1
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
+ : athrow
+ : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
+ : invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
+ : areturn
+
+public int productArity();
+ Signature: ()I
+ Code:
+ : iconst_2
+ : ireturn
+
+public java.lang.String productPrefix();
+ Signature: ()Ljava/lang/String;
+ Code:
+ : ldc ##; //String ::
+ : areturn
+
+public scala.collection.immutable.List tl$1();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : getfield ##; //Field tl:Lscala/collection/immutable/List;
+ : areturn
+
+public java.lang.Object hd$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : getfield ##; //Field hd:Ljava/lang/Object;
+ : areturn
+
+private void readObject(java.io.ObjectInputStream);
+ Signature: (Ljava/io/ObjectInputStream;)V
+ Code:
+ : aload_1
+ : invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
+ : invokespecial ##; //Method hd_$eq:(Ljava/lang/Object;)V
+ : getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
+ : ifeq 28
+ : goto 29
+ : iconst_1
+ : invokevirtual ##; //Method scala/Predef$.assert:(Z)V
+ : astore_2
+ : aload_1
+ : invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
+ : astore_3
+ : getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
+ : aload_3
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
+ : ifeq 57
+ : aload_2
+ : getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
+ : invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
+ : return
+ : aload_3
+ : aload_3
+ : astore 4
+ : new ##; //class scala/collection/immutable/$colon$colon
+ : dup
+ : aload 4
+ : getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
+ : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ : astore 5
+ : aload_2
+ : aload 5
+ : invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
+ : aload 5
+ : astore_2
+ : goto 34
+ : new ##; //class scala/MatchError
+ : dup
+ : aload_3
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
+ : athrow
+
+private void writeObject(java.io.ObjectOutputStream);
+ Signature: (Ljava/io/ObjectOutputStream;)V
+ Code:
+ : astore_2
+ : aload_2
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/IterableTemplate.isEmpty:()Z
+ : ifeq 19
+ : aload_1
+ : getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
+ : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
+ : return
+ : aload_1
+ : aload_2
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/IterableTemplate.head:()Ljava/lang/Object;
+ : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
+ : aload_2
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/TraversibleTemplate.tail:()Lscala/collection/generic/TraversibleTemplate;
+ : checkcast ##; //class scala/collection/immutable/List
+ : astore_2
+ : goto 2
+
+public boolean isEmpty();
+ Signature: ()Z
+ Code:
+ : ireturn
+
+public scala.collection.immutable.List tail();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
+
+public java.lang.Object head();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : areturn
+
+public void tl_$eq(scala.collection.immutable.List);
+ Signature: (Lscala/collection/immutable/List;)V
+ Code:
+ : aload_1
+ : putfield ##; //Field tl:Lscala/collection/immutable/List;
+ : return
+
+public scala.collection.immutable.List tl();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : getfield ##; //Field tl:Lscala/collection/immutable/List;
+ : areturn
+
+private void hd_$eq(java.lang.Object);
+ Signature: (Ljava/lang/Object;)V
+ Code:
+ : aload_1
+ : putfield ##; //Field hd:Ljava/lang/Object;
+ : return
+
+private java.lang.Object hd();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : getfield ##; //Field hd:Ljava/lang/Object;
+ : areturn
+
+}
+
=== r17682 ===
commit d7e80d75bba52b6ff0b240462f03b8b22dc753c7
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri May 8 18:24:05 2009 +0000
4 out of 5 spelling bee champs say: Traversable
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@17682 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 8da5b91..1ba366c 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -26,8 +26,8 @@ public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collectio
: invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
: return
-public scala.collection.generic.TraversibleTemplate tail();
- Signature: ()Lscala/collection/generic/TraversibleTemplate;
+public scala.collection.generic.TraversableTemplate tail();
+ Signature: ()Lscala/collection/generic/TraversableTemplate;
Code:
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
@@ -145,7 +145,7 @@ private void writeObject(java.io.ObjectOutputStream);
: invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/IterableTemplate.head:()Ljava/lang/Object;
: invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
: aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/TraversibleTemplate.tail:()Lscala/collection/generic/TraversibleTemplate;
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/TraversableTemplate.tail:()Lscala/collection/generic/TraversableTemplate;
: checkcast ##; //class scala/collection/immutable/List
: astore_2
: goto 2
Dropping r17715, no change after applying javap filter.
Dropping r17884, no change after applying javap filter.
=== r17916 ===
commit 4872e1cc0afc6c028b0822616b5d7be48575800b
Author: rytz <rytz@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Sat May 30 07:36:31 2009 +0000
Named and default arguments
- MethodTypes now have (params: List[Symbol])
- "copy"-methods for case classes
- the "copy" object in the compiler is now called "treeCopy"
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@17916 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index e78bf5e..940f2ab 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -82,6 +82,28 @@ public java.lang.Object hd$1();
: getfield ##; //Field hd:Ljava/lang/Object;
: areturn
+public java.lang.Object copy$default$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : areturn
+
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
+
+public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
+ Code:
+ : new ##; //class scala/collection/immutable/$colon$colon
+ : dup
+ : aload_1
+ : aload_2
+ : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ : areturn
+
private void readObject(java.io.ObjectInputStream);
Signature: (Ljava/io/ObjectInputStream;)V
Code:
Dropping r17925, no change after applying javap filter.
=== r18153 ===
commit c554ad1f92279bf1d5da77ca465f438a0e99b50c
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Mon Jun 29 18:49:32 2009 +0000
Reverted default parameters on RichInt range methods.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18153 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 362cdbe..03c2459 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -148,7 +148,8 @@ private void readObject(java.io.ObjectInputStream);
: new ##; //class scala/MatchError
: dup
: aload_3
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
private void writeObject(java.io.ObjectOutputStream);
Dropping r18195, no change after applying javap filter.
=== r18230 ===
commit 6706759ca09156fbacc7c8fbf738c96d874967af
Author: michelou <michelou@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Tue Jul 7 10:18:05 2009 +0000
fixed Scala comments, added svn:keywords
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18230 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 62bd82b..dbc7fdb 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -125,12 +125,16 @@ private void readObject(java.io.ObjectInputStream);
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
: aload_3
: invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 57
+ : ifeq 64
+ : aload_3
+ : instanceof ##; //class scala/collection/immutable/ListSerializeEnd$
+ : ifeq 64
: aload_2
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: aload_3
+ : ifnull 97
: aload_3
: astore 4
: new ##; //class scala/collection/immutable/$colon$colon
=== r18245 ===
commit c4fb1e23bce7c871c8e0be408051f44b19410fda
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Jul 9 18:06:38 2009 +0000
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.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18245 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index dbc7fdb..8a9ee15 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -38,6 +38,13 @@ public scala.collection.generic.LinearSequenceTemplate tail();
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
+public boolean canEqual(java.lang.Object);
+ Signature: (Ljava/lang/Object;)Z
+ Code:
+ : aload_1
+ : instanceof ##; //class scala/collection/immutable/$colon$colon
+ : ireturn
+
public java.lang.Object productElement(int);
Signature: (I)Ljava/lang/Object;
Code:
=== r18353 ===
commit 4641e1ac3b7aa76b756216bef962d63e80323edf
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Mon Jul 20 22:35:38 2009 +0000
The creation of scala.collection.mutable.Iterable in 2.8 means
that all the other classes in scala.collection.mutable are
impacted - what they once thought was scala.Iterable is now
mutable Iterable. This meant such things as Stack ++= List(1,2,3)
would no longer compile. This patch qualifies the relevant
Iterables as collection.Iterables, though based on inspecting
other classes, it's likely they should actually be Traversables.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18353 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 8a9ee15..a60efab 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -6,7 +6,7 @@ public static final long serialVersionUID;
private scala.collection.immutable.List tl;
Signature: Lscala/collection/immutable/List;
-private java.lang.Object hd;
+private java.lang.Object scala$collection$immutable$$colon$colon$$hd;
Signature: Ljava/lang/Object;
public static {};
@@ -20,7 +20,7 @@ public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collectio
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
Code:
: aload_1
- : putfield ##; //Field hd:Ljava/lang/Object;
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: aload_2
: putfield ##; //Field tl:Lscala/collection/immutable/List;
: invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
@@ -86,13 +86,13 @@ public scala.collection.immutable.List tl$1();
public java.lang.Object hd$1();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field hd:Ljava/lang/Object;
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
public java.lang.Object copy$default$1();
Signature: ()Ljava/lang/Object;
Code:
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: areturn
public scala.collection.immutable.List copy$default$2();
@@ -116,9 +116,9 @@ private void readObject(java.io.ObjectInputStream);
Code:
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : invokespecial ##; //Method hd_$eq:(Ljava/lang/Object;)V
+ : invokespecial ##; //Method scala$collection$immutable$$colon$colon$$hd_$eq:(Ljava/lang/Object;)V
: getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
: invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
: ifeq 28
@@ -198,7 +198,7 @@ public scala.collection.immutable.List tail();
public java.lang.Object head();
Signature: ()Ljava/lang/Object;
Code:
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: areturn
public void tl_$eq(scala.collection.immutable.List);
@@ -214,17 +214,17 @@ public scala.collection.immutable.List tl();
: getfield ##; //Field tl:Lscala/collection/immutable/List;
: areturn
-private void hd_$eq(java.lang.Object);
+private void scala$collection$immutable$$colon$colon$$hd_$eq(java.lang.Object);
Signature: (Ljava/lang/Object;)V
Code:
: aload_1
- : putfield ##; //Field hd:Ljava/lang/Object;
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: return
-private java.lang.Object hd();
+public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field hd:Ljava/lang/Object;
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
}
Dropping r18389, no change after applying javap filter.
Dropping r18490, no change after applying javap filter.
=== r18541 ===
commit 0fe7537d1dc736690216af5ad9858d65f90f72d7
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Aug 21 18:18:39 2009 +0000
Fix for the discovery that .get on a non-existent Map key
returns None, even if a default value has been declared.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18541 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index c2db493..f6d1a9f 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -6,7 +6,7 @@ public static final long serialVersionUID;
private scala.collection.immutable.List tl;
Signature: Lscala/collection/immutable/List;
-private java.lang.Object scala$collection$immutable$$colon$colon$$hd;
+private java.lang.Object hd;
Signature: Ljava/lang/Object;
public static {};
@@ -20,7 +20,7 @@ public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collectio
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
Code:
: aload_1
- : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : putfield ##; //Field hd:Ljava/lang/Object;
: aload_2
: putfield ##; //Field tl:Lscala/collection/immutable/List;
: invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
@@ -86,13 +86,13 @@ public scala.collection.immutable.List tl$1();
public java.lang.Object hd$1();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : getfield ##; //Field hd:Ljava/lang/Object;
: areturn
public java.lang.Object copy$default$1();
Signature: ()Ljava/lang/Object;
Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
: areturn
public scala.collection.immutable.List copy$default$2();
@@ -116,9 +116,9 @@ private void readObject(java.io.ObjectInputStream);
Code:
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : invokespecial ##; //Method scala$collection$immutable$$colon$colon$$hd_$eq:(Ljava/lang/Object;)V
+ : invokespecial ##; //Method hd_$eq:(Ljava/lang/Object;)V
: getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
: invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
: ifeq 28
@@ -198,7 +198,7 @@ public scala.collection.immutable.List tail();
public java.lang.Object head();
Signature: ()Ljava/lang/Object;
Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : invokespecial ##; //Method hd:()Ljava/lang/Object;
: areturn
public void tl_$eq(scala.collection.immutable.List);
@@ -214,17 +214,17 @@ public scala.collection.immutable.List tl();
: getfield ##; //Field tl:Lscala/collection/immutable/List;
: areturn
-private void scala$collection$immutable$$colon$colon$$hd_$eq(java.lang.Object);
+private void hd_$eq(java.lang.Object);
Signature: (Ljava/lang/Object;)V
Code:
: aload_1
- : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : putfield ##; //Field hd:Ljava/lang/Object;
: return
-public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
+private java.lang.Object hd();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : getfield ##; //Field hd:Ljava/lang/Object;
: areturn
}
Dropping r18602, no change after applying javap filter.
=== r18686 ===
commit 3cd837cf7afde32ebf61dca4f4668716a28be366
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Sep 10 16:40:34 2009 +0000
Missing files from last checkin
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18686 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 0ad9d2b..609aa81 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -26,14 +26,14 @@ public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collectio
: invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
: return
-public scala.collection.generic.TraversableTemplate tail();
- Signature: ()Lscala/collection/generic/TraversableTemplate;
+public java.lang.Object tail();
+ Signature: ()Ljava/lang/Object;
Code:
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
-public scala.collection.generic.LinearSequenceTemplate tail();
- Signature: ()Lscala/collection/generic/LinearSequenceTemplate;
+public scala.collection.LinearSequenceLike tail();
+ Signature: ()Lscala/collection/LinearSequenceLike;
Code:
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
@@ -168,7 +168,7 @@ private void writeObject(java.io.ObjectOutputStream);
Code:
: astore_2
: aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/IterableTemplate.isEmpty:()Z
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.isEmpty:()Z
: ifeq 19
: aload_1
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
@@ -176,10 +176,10 @@ private void writeObject(java.io.ObjectOutputStream);
: return
: aload_1
: aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/IterableTemplate.head:()Ljava/lang/Object;
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.head:()Ljava/lang/Object;
: invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
: aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/generic/TraversableTemplate.tail:()Lscala/collection/generic/TraversableTemplate;
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/TraversableLike.tail:()Ljava/lang/Object;
: checkcast ##; //class scala/collection/immutable/List
: astore_2
: goto 2
=== r18696 ===
commit f428860cb54431c656768de59e7b89d8545640e0
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Sep 11 17:08:43 2009 +0000
Made canEqual abstract in Product and only inserted into
case classes if no concrete implementation is inherited.
Restored the disabled canEquals usages in collections.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18696 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 609aa81..0fddcb6 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -38,13 +38,6 @@ public scala.collection.LinearSequenceLike tail();
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
-public boolean canEqual(java.lang.Object);
- Signature: (Ljava/lang/Object;)Z
- Code:
- : aload_1
- : instanceof ##; //class scala/collection/immutable/$colon$colon
- : ireturn
-
public java.lang.Object productElement(int);
Signature: (I)Ljava/lang/Object;
Code:
Dropping r18781, no change after applying javap filter.
=== r18793 ===
commit 0561447265d29c99c77bdae53cc655c7caa755e7
Author: michelou <michelou@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Sep 25 19:56:41 2009 +0000
reverted 'doArg' change made in r18738, removed a few warnings
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18793 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index f354585..7bfa328 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -125,16 +125,12 @@ private void readObject(java.io.ObjectInputStream);
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
: aload_3
: invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 64
- : aload_3
- : instanceof ##; //class scala/collection/immutable/ListSerializeEnd$
- : ifeq 64
+ : ifeq 57
: aload_2
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: aload_3
- : ifnull 97
: aload_3
: astore 4
: new ##; //class scala/collection/immutable/$colon$colon
Dropping r18801, no change after applying javap filter.
=== r18902 ===
commit 76477067344085f0a863df5ba016f224544b0f4b
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Oct 2 20:51:01 2009 +0000
Introduced type as well as value Sequence in package collection, so that
back-migration will be easier.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@18902 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 6f92f0d..362059e 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -32,8 +32,8 @@ public java.lang.Object tail();
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
-public scala.collection.LinearSequenceLike tail();
- Signature: ()Lscala/collection/LinearSequenceLike;
+public scala.collection.LinearSeqLike tail();
+ Signature: ()Lscala/collection/LinearSeqLike;
Code:
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
=== r19026 ===
commit b5aa54ff7311117038b6a56acfe3e3ccd09a497d
Author: rompf <rompf@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Sat Oct 10 00:41:47 2009 +0000
fixed WrappedString issue from last commit
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19026 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 362059e..45338cd 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -44,9 +44,11 @@ public java.lang.Object productElement(int);
: iload_1
: istore_2
: iload_2
- : 46;
- : 39;
+ : 84;
+ : 58;
default: 24 }
+ : iconst_1
+ : ifeq 43
: new ##; //class java/lang/IndexOutOfBoundsException
: dup
: iload_1
@@ -54,9 +56,35 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
: athrow
+ : new ##; //class scala/MatchError
+ : dup
+ : iload_2
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : athrow
+ : iconst_1
+ : ifeq 69
: invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
+ : goto 92
+ : new ##; //class scala/MatchError
+ : dup
+ : iload_2
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : athrow
+ : iconst_1
+ : ifeq 93
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
+ : new ##; //class scala/MatchError
+ : dup
+ : iload_2
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : athrow
public int productArity();
Signature: ()I
@@ -125,12 +153,25 @@ private void readObject(java.io.ObjectInputStream);
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
: aload_3
: invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 57
+ : ifeq 73
+ : iconst_1
+ : ifeq 61
: aload_2
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
+ : new ##; //class scala/MatchError
+ : dup
+ : aload_3
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : athrow
: aload_3
+ : ifnull 125
+ : aload_3
+ : astore 4
+ : iconst_1
+ : ifeq 113
: aload_3
: astore 4
: new ##; //class scala/collection/immutable/$colon$colon
@@ -151,6 +192,12 @@ private void readObject(java.io.ObjectInputStream);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
+ : new ##; //class scala/MatchError
+ : dup
+ : aload_3
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : athrow
private void writeObject(java.io.ObjectOutputStream);
Signature: (Ljava/io/ObjectOutputStream;)V
=== r19041 ===
commit db53bf319e96e7c43959fb1200f5603d4d800ea0
Author: rytz <rytz@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Sun Oct 11 08:18:56 2009 +0000
use arraycopy from Platform (for msil)
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19041 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 45338cd..7e0fca5 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -6,7 +6,7 @@ public static final long serialVersionUID;
private scala.collection.immutable.List tl;
Signature: Lscala/collection/immutable/List;
-private java.lang.Object hd;
+private java.lang.Object scala$collection$immutable$$colon$colon$$hd;
Signature: Ljava/lang/Object;
public static {};
@@ -20,7 +20,7 @@ public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collectio
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
Code:
: aload_1
- : putfield ##; //Field hd:Ljava/lang/Object;
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: aload_2
: putfield ##; //Field tl:Lscala/collection/immutable/List;
: invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
@@ -107,19 +107,7 @@ public scala.collection.immutable.List tl$1();
public java.lang.Object hd$1();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field hd:Ljava/lang/Object;
- : areturn
-
-public java.lang.Object copy$default$1();
- Signature: ()Ljava/lang/Object;
- Code:
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
- : areturn
-
-public scala.collection.immutable.List copy$default$2();
- Signature: ()Lscala/collection/immutable/List;
- Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
@@ -137,64 +125,77 @@ private void readObject(java.io.ObjectInputStream);
Code:
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : invokespecial ##; //Method hd_$eq:(Ljava/lang/Object;)V
+ : invokespecial ##; //Method scala$collection$immutable$$colon$colon$$hd_$eq:(Ljava/lang/Object;)V
: getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 28
- : goto 29
+ : astore_2
+ : dup
+ : ifnonnull 31
+ : pop
+ : aload_2
+ : ifnull 38
+ : goto 42
+ : aload_2
+ : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
+ : ifeq 42
+ : goto 43
: iconst_1
: invokevirtual ##; //Method scala/Predef$.assert:(Z)V
- : astore_2
+ : astore_3
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : astore_3
+ : astore 4
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : aload_3
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 73
+ : aload 4
+ : astore 5
+ : dup
+ : ifnonnull 74
+ : pop
+ : aload 5
+ : ifnull 82
+ : aload 5
+ : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
: iconst_1
- : ifeq 61
- : aload_2
+ : ifeq 94
+ : aload_3
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
- : aload_3
- : ifnull 125
- : aload_3
- : astore 4
+ : aload 4
+ : ifnull 163
+ : aload 4
+ : astore 6
: iconst_1
- : ifeq 113
- : aload_3
- : astore 4
+ : aload 4
+ : astore 6
: new ##; //class scala/collection/immutable/$colon$colon
: dup
- : aload 4
+ : aload 6
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : astore 5
- : aload_2
- : aload 5
+ : astore 7
+ : aload_3
+ : aload 7
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
- : aload 5
- : astore_2
- : goto 34
+ : aload 7
+ : astore_3
+ : goto 48
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
@@ -234,7 +235,7 @@ public scala.collection.immutable.List tail();
public java.lang.Object head();
Signature: ()Ljava/lang/Object;
Code:
- : invokespecial ##; //Method hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: areturn
public void tl_$eq(scala.collection.immutable.List);
@@ -250,17 +251,29 @@ public scala.collection.immutable.List tl();
: getfield ##; //Field tl:Lscala/collection/immutable/List;
: areturn
-private void hd_$eq(java.lang.Object);
+private void scala$collection$immutable$$colon$colon$$hd_$eq(java.lang.Object);
Signature: (Ljava/lang/Object;)V
Code:
: aload_1
- : putfield ##; //Field hd:Ljava/lang/Object;
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: return
-private java.lang.Object hd();
+public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
Signature: ()Ljava/lang/Object;
Code:
- : getfield ##; //Field hd:Ljava/lang/Object;
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : areturn
+
+public java.lang.Object copy$default$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : areturn
+
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
: areturn
}
=== r19296 ===
commit a459cb1dfcaed11b8de15950129bbf3d864d4c82
Author: phaller <phaller@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Mon Oct 26 21:31:39 2009 +0000
Made scala.util.matching.Regex serializable. Fix for #2309.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19296 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 7e0fca5..1348d25 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -110,6 +110,18 @@ public java.lang.Object hd$1();
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
+public java.lang.Object copy$default$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : areturn
+
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
+
public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
Code:
@@ -129,73 +141,60 @@ private void readObject(java.io.ObjectInputStream);
: getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
: invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : astore_2
- : dup
- : ifnonnull 31
- : pop
- : aload_2
- : ifnull 38
- : goto 42
- : aload_2
- : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
- : ifeq 42
- : goto 43
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
+ : ifeq 28
+ : goto 29
: iconst_1
: invokevirtual ##; //Method scala/Predef$.assert:(Z)V
- : astore_3
+ : astore_2
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : astore 4
+ : astore_3
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : aload 4
- : astore 5
- : dup
- : ifnonnull 74
- : pop
- : aload 5
- : ifnull 82
- : aload 5
- : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
- : iconst_1
- : ifeq 94
: aload_3
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
+ : ifeq 73
+ : iconst_1
+ : ifeq 61
+ : aload_2
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: new ##; //class scala/MatchError
: dup
- : aload 4
+ : aload_3
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
- : aload 4
- : ifnull 163
- : aload 4
- : astore 6
+ : aload_3
+ : ifnull 125
+ : aload_3
+ : astore 4
: iconst_1
- : aload 4
- : astore 6
+ : ifeq 113
+ : aload_3
+ : astore 4
: new ##; //class scala/collection/immutable/$colon$colon
: dup
- : aload 6
+ : aload 4
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : astore 7
- : aload_3
- : aload 7
+ : astore 5
+ : aload_2
+ : aload 5
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
- : aload 7
- : astore_3
- : goto 48
+ : aload 5
+ : astore_2
+ : goto 34
: new ##; //class scala/MatchError
: dup
- : aload 4
+ : aload_3
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
: new ##; //class scala/MatchError
: dup
- : aload 4
+ : aload_3
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
@@ -264,17 +263,5 @@ public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
-public java.lang.Object copy$default$1();
- Signature: ()Ljava/lang/Object;
- Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
- : areturn
-
-public scala.collection.immutable.List copy$default$2();
- Signature: ()Lscala/collection/immutable/List;
- Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
- : areturn
-
}
Dropping r19404, no change after applying javap filter.
Dropping r19428, no change after applying javap filter.
Dropping r19509, no change after applying javap filter.
=== r19578 ===
commit ae40ea4a4d585149f612cba3731c5fbccf294e0a
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Nov 12 17:22:51 2009 +0000
added hooks so that BigInt, BigDecimal can do the right thign for equality.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19578 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index b2cfc91..7047cab 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -110,28 +110,6 @@ public java.lang.Object hd$1();
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
-public java.lang.Object copy$default$1();
- Signature: ()Ljava/lang/Object;
- Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
- : areturn
-
-public scala.collection.immutable.List copy$default$2();
- Signature: ()Lscala/collection/immutable/List;
- Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
- : areturn
-
-public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
- Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
- Code:
- : new ##; //class scala/collection/immutable/$colon$colon
- : dup
- : aload_1
- : aload_2
- : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : areturn
-
private void readObject(java.io.ObjectInputStream);
Signature: (Ljava/io/ObjectInputStream;)V
Code:
@@ -263,5 +241,27 @@ public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
+public java.lang.Object copy$default$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : areturn
+
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
+
+public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
+ Code:
+ : new ##; //class scala/collection/immutable/$colon$colon
+ : dup
+ : aload_1
+ : aload_2
+ : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ : areturn
+
}
=== r19604 ===
commit c1751dfa67afeacfa34750181b064718bd56d6f6
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Nov 12 22:13:04 2009 +0000
Bringing BigInt and BigDecimal into the club of things which
can be equal to one another and which will have the same hashCode.
Fixed some old and some new bugs associated with equality.
Note: not fully optimized.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19604 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 7047cab..9d0ee4c 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -119,60 +119,73 @@ private void readObject(java.io.ObjectInputStream);
: getstatic ##; //Field scala/Predef$.MODULE$:Lscala/Predef$;
: invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 28
- : goto 29
+ : astore_2
+ : dup
+ : ifnonnull 31
+ : pop
+ : aload_2
+ : ifnull 38
+ : goto 42
+ : aload_2
+ : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
+ : ifeq 42
+ : goto 43
: iconst_1
: invokevirtual ##; //Method scala/Predef$.assert:(Z)V
- : astore_2
+ : astore_3
: aload_1
: invokevirtual ##; //Method java/io/ObjectInputStream.readObject:()Ljava/lang/Object;
- : astore_3
+ : astore 4
: getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : aload_3
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.equals:(Ljava/lang/Object;Ljava/lang/Object;)Z
- : ifeq 73
+ : aload 4
+ : astore 5
+ : dup
+ : ifnonnull 74
+ : pop
+ : aload 5
+ : ifnull 82
+ : aload 5
+ : invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
: iconst_1
- : ifeq 61
- : aload_2
+ : ifeq 94
+ : aload_3
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
- : aload_3
- : ifnull 125
- : aload_3
- : astore 4
+ : aload 4
+ : ifnull 163
+ : aload 4
+ : astore 6
: iconst_1
- : ifeq 113
- : aload_3
- : astore 4
+ : aload 4
+ : astore 6
: new ##; //class scala/collection/immutable/$colon$colon
: dup
- : aload 4
+ : aload 6
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : astore 5
- : aload_2
- : aload 5
+ : astore 7
+ : aload_3
+ : aload 7
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
- : aload 5
- : astore_2
- : goto 34
+ : aload 7
+ : astore_3
+ : goto 48
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
: new ##; //class scala/MatchError
: dup
- : aload_3
+ : aload 4
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
Dropping r19684, no change after applying javap filter.
Dropping r19696, no change after applying javap filter.
Dropping r19740, no change after applying javap filter.
=== r19900 ===
commit 0789cc5040a655b0fc063234dd200a6e2119b1f2
Author: malayeri <malayeri@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Nov 26 16:56:02 2009 +0000
Improved fix for #2552
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@19900 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 7879d1c..03e2a64 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -110,6 +110,16 @@ public java.lang.Object hd$1();
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
+public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
+ Code:
+ : new ##; //class scala/collection/immutable/$colon$colon
+ : dup
+ : aload_1
+ : aload_2
+ : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ : areturn
+
private void readObject(java.io.ObjectInputStream);
Signature: (Ljava/io/ObjectInputStream;)V
Code:
@@ -266,15 +276,5 @@ public scala.collection.immutable.List copy$default$2();
: invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
: areturn
-public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
- Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
- Code:
- : new ##; //class scala/collection/immutable/$colon$colon
- : dup
- : aload_1
- : aload_2
- : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : areturn
-
}
Dropping r19903, no change after applying javap filter.
Dropping r19905, no change after applying javap filter.
Dropping r19938, no change after applying javap filter.
Dropping r20129, no change after applying javap filter.
=== r20444 ===
commit b330521e42fe84333a7bffe1dd2c1266a1a1f610
Author: prokopec <prokopec@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Mon Jan 11 15:44:22 2010 +0000
Red black tree patch and test.
no review
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@20444 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 3531199..0277bac 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -44,11 +44,9 @@ public java.lang.Object productElement(int);
: iload_1
: istore_2
: iload_2
- : 84;
- : 58;
+ : 46;
+ : 39;
default: 24 }
- : iconst_1
- : ifeq 43
: new ##; //class java/lang/IndexOutOfBoundsException
: dup
: iload_1
@@ -56,35 +54,9 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
: athrow
- : new ##; //class scala/MatchError
- : dup
- : iload_2
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
- : athrow
- : iconst_1
- : ifeq 69
: invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
- : goto 92
- : new ##; //class scala/MatchError
- : dup
- : iload_2
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
- : athrow
- : iconst_1
- : ifeq 93
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
- : new ##; //class scala/MatchError
- : dup
- : iload_2
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
- : athrow
public int productArity();
Signature: ()I
@@ -156,23 +128,12 @@ private void readObject(java.io.ObjectInputStream);
: ifnull 82
: aload 5
: invokevirtual ##; //Method java/lang/Object.equals:(Ljava/lang/Object;)Z
- : iconst_1
- : ifeq 94
: aload_3
: getstatic ##; //Field scala/collection/immutable/Nil$.MODULE$:Lscala/collection/immutable/Nil$;
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
- : new ##; //class scala/MatchError
- : dup
- : aload 4
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
- : athrow
: aload 4
- : ifnull 163
- : aload 4
- : astore 6
- : iconst_1
+ : ifnull 125
: aload 4
: astore 6
: new ##; //class scala/collection/immutable/$colon$colon
@@ -193,12 +154,6 @@ private void readObject(java.io.ObjectInputStream);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
- : new ##; //class scala/MatchError
- : dup
- : aload 4
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
- : athrow
private void writeObject(java.io.ObjectOutputStream);
Signature: (Ljava/io/ObjectOutputStream;)V
Dropping r20728, no change after applying javap filter.
Dropping r20779, no change after applying javap filter.
=== r20787 ===
commit db4f58e9c6093b1467294b57d0dcbf32c047fa51
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Feb 4 12:26:02 2010 +0000
Noticed that all the system properties were being read into
vals so they didn't notice changes. Determined this was not
correct, and changed them into defs. No review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@20787 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 087a7a1..f563f3d 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -16,81 +16,81 @@ public static {};
: putstatic ##; //Field serialVersionUID:J
: return
-public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collection.immutable.List);
- Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
Code:
- : aload_1
- : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
- : aload_2
- : putfield ##; //Field tl:Lscala/collection/immutable/List;
- : invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
- : return
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
-public java.lang.Object tail();
+public java.lang.Object copy$default$1();
Signature: ()Ljava/lang/Object;
Code:
- : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: areturn
-public scala.collection.LinearSeqLike tail();
- Signature: ()Lscala/collection/LinearSeqLike;
+public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
+ Signature: ()Ljava/lang/Object;
Code:
- : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
: areturn
-public java.lang.Object productElement(int);
- Signature: (I)Ljava/lang/Object;
+private void scala$collection$immutable$$colon$colon$$hd_$eq(java.lang.Object);
+ Signature: (Ljava/lang/Object;)V
Code:
- : iload_1
- : istore_2
- : iload_2
- : 46;
- : 39;
- default: 24 }
- : new ##; //class java/lang/IndexOutOfBoundsException
- : dup
- : iload_1
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
- : athrow
- : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
- : invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
+ : aload_1
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : return
+
+public scala.collection.immutable.List tl();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : getfield ##; //Field tl:Lscala/collection/immutable/List;
: areturn
-public int productArity();
- Signature: ()I
+public void tl_$eq(scala.collection.immutable.List);
+ Signature: (Lscala/collection/immutable/List;)V
Code:
- : iconst_2
- : ireturn
+ : aload_1
+ : putfield ##; //Field tl:Lscala/collection/immutable/List;
+ : return
-public java.lang.String productPrefix();
- Signature: ()Ljava/lang/String;
+public java.lang.Object head();
+ Signature: ()Ljava/lang/Object;
Code:
- : ldc ##; //String ::
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
: areturn
-public scala.collection.immutable.List tl$1();
+public scala.collection.immutable.List tail();
Signature: ()Lscala/collection/immutable/List;
Code:
- : getfield ##; //Field tl:Lscala/collection/immutable/List;
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
: areturn
-public java.lang.Object hd$1();
- Signature: ()Ljava/lang/Object;
+public boolean isEmpty();
+ Signature: ()Z
Code:
- : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
- : areturn
+ : ireturn
-public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
- Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
+private void writeObject(java.io.ObjectOutputStream);
+ Signature: (Ljava/io/ObjectOutputStream;)V
Code:
- : new ##; //class scala/collection/immutable/$colon$colon
- : dup
+ : astore_2
+ : aload_2
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.isEmpty:()Z
+ : ifeq 19
+ : aload_1
+ : getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
+ : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
+ : return
: aload_1
: aload_2
- : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
- : areturn
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.head:()Ljava/lang/Object;
+ : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
+ : aload_2
+ : invokeinterface ##, 1; //InterfaceMethod scala/collection/TraversableLike.tail:()Ljava/lang/Object;
+ : checkcast ##; //class scala/collection/immutable/List
+ : astore_2
+ : goto 2
private void readObject(java.io.ObjectInputStream);
Signature: (Ljava/io/ObjectInputStream;)V
@@ -155,81 +155,81 @@ private void readObject(java.io.ObjectInputStream);
: invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
: athrow
-private void writeObject(java.io.ObjectOutputStream);
- Signature: (Ljava/io/ObjectOutputStream;)V
+public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
Code:
- : astore_2
- : aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.isEmpty:()Z
- : ifeq 19
- : aload_1
- : getstatic ##; //Field scala/collection/immutable/ListSerializeEnd$.MODULE$:Lscala/collection/immutable/ListSerializeEnd$;
- : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
- : return
+ : new ##; //class scala/collection/immutable/$colon$colon
+ : dup
: aload_1
: aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/IterableLike.head:()Ljava/lang/Object;
- : invokevirtual ##; //Method java/io/ObjectOutputStream.writeObject:(Ljava/lang/Object;)V
- : aload_2
- : invokeinterface ##, 1; //InterfaceMethod scala/collection/TraversableLike.tail:()Ljava/lang/Object;
- : checkcast ##; //class scala/collection/immutable/List
- : astore_2
- : goto 2
+ : invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
+ : areturn
-public boolean isEmpty();
- Signature: ()Z
+public java.lang.Object hd$1();
+ Signature: ()Ljava/lang/Object;
Code:
- : ireturn
+ : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : areturn
-public scala.collection.immutable.List tail();
+public scala.collection.immutable.List tl$1();
Signature: ()Lscala/collection/immutable/List;
Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : getfield ##; //Field tl:Lscala/collection/immutable/List;
: areturn
-public java.lang.Object head();
- Signature: ()Ljava/lang/Object;
+public java.lang.String productPrefix();
+ Signature: ()Ljava/lang/String;
Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : ldc ##; //String ::
: areturn
-public void tl_$eq(scala.collection.immutable.List);
- Signature: (Lscala/collection/immutable/List;)V
+public int productArity();
+ Signature: ()I
Code:
- : aload_1
- : putfield ##; //Field tl:Lscala/collection/immutable/List;
- : return
+ : iconst_2
+ : ireturn
-public scala.collection.immutable.List tl();
- Signature: ()Lscala/collection/immutable/List;
+public java.lang.Object productElement(int);
+ Signature: (I)Ljava/lang/Object;
Code:
- : getfield ##; //Field tl:Lscala/collection/immutable/List;
+ : iload_1
+ : istore_2
+ : iload_2
+ : 46;
+ : 39;
+ default: 24 }
+ : new ##; //class java/lang/IndexOutOfBoundsException
+ : dup
+ : iload_1
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
+ : athrow
+ : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
+ : invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
-private void scala$collection$immutable$$colon$colon$$hd_$eq(java.lang.Object);
- Signature: (Ljava/lang/Object;)V
- Code:
- : aload_1
- : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
- : return
-
-public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
- Signature: ()Ljava/lang/Object;
+public scala.collection.LinearSeqLike tail();
+ Signature: ()Lscala/collection/LinearSeqLike;
Code:
- : getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
-public java.lang.Object copy$default$1();
+public java.lang.Object tail();
Signature: ()Ljava/lang/Object;
Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
-public scala.collection.immutable.List copy$default$2();
- Signature: ()Lscala/collection/immutable/List;
+public scala.collection.immutable.$colon$colon(java.lang.Object, scala.collection.immutable.List);
+ Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)V
Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
- : areturn
+ : aload_1
+ : putfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
+ : aload_2
+ : putfield ##; //Field tl:Lscala/collection/immutable/List;
+ : invokespecial ##; //Method scala/collection/immutable/List."<init>":()V
+ : return
}
Dropping r20788, no change after applying javap filter.
Dropping r20805, no change after applying javap filter.
=== r20958 ===
commit 1b93a3411b03bf1809e1305b5dcf6cc54f29699a
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Tue Feb 23 08:32:53 2010 +0000
Added productElementName to Product. Now you can access all the
case class field names your heart desires. Review by odersky.
scala> case class Foo[T](kilroy: String, burma: List[T], shave: Seq[Int])
defined class Foo
scala> Foo("was here", List('myanmar), Seq(25, 25))
res0: Foo[Symbol] = Foo(was here,List('myanmar),List(25, 25))
scala> 0 to 2 map (res0 productElementName _)
res1: IndexedSeq[String] = IndexedSeq(kilroy, burma, shave)
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@20958 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index f563f3d..526e4f6 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -209,6 +209,27 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
+public java.lang.String productElementName(int);
+ Signature: (I)Ljava/lang/String;
+ Code:
+ : iload_1
+ : istore_2
+ : iload_2
+ : 44;
+ : 39;
+ default: 24 }
+ : new ##; //class java/lang/IndexOutOfBoundsException
+ : dup
+ : iload_1
+ : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
+ : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
+ : invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
+ : athrow
+ : ldc ##; //String tl$1
+ : goto 46
+ : ldc ##; //String hd$1
+ : areturn
+
public scala.collection.LinearSeqLike tail();
Signature: ()Lscala/collection/LinearSeqLike;
Code:
=== r21091 ===
commit 2a6427441622e1c94d36eb2d962a85cdc5591f90
Author: rompf <rompf@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Sun Mar 7 20:52:45 2010 +0000
- new immutable HashMap implementation based on a hash trie. this is the first iteration, more optimizations will be added later.
- updated test cases to reflect new ordering of elements
- made Map.empty and Set.empty singletons, deprecating classes Map.EmptyMap and Set.EmptySet
Review by extempore, odersky.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@21091 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 526e4f6..c6e771a 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -151,8 +151,7 @@ private void readObject(java.io.ObjectInputStream);
: new ##; //class scala/MatchError
: dup
: aload 4
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/String;)V
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
: athrow
public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
Dropping r21137, no change after applying javap filter.
=== r21223 ===
commit 59390c441039d11bc7ca23965547b3c808eddad0
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Mar 19 22:37:13 2010 +0000
Half-disabled productElementName until I have time to reimplement
it more to martin's liking. ("Half" because full disabling is not
possible until starr has forgotten about it.) No review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@21223 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index b4a261b..f52613f 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -208,27 +208,6 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
-public java.lang.String productElementName(int);
- Signature: (I)Ljava/lang/String;
- Code:
- : iload_1
- : istore_2
- : iload_2
- : 44;
- : 39;
- default: 24 }
- : new ##; //class java/lang/IndexOutOfBoundsException
- : dup
- : iload_1
- : invokestatic ##; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
- : invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
- : invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
- : athrow
- : ldc ##; //String tl$1
- : goto 46
- : ldc ##; //String hd$1
- : areturn
-
public scala.collection.LinearSeqLike tail();
Signature: ()Lscala/collection/LinearSeqLike;
Code:
Dropping r21234, no change after applying javap filter.
Dropping r21245, no change after applying javap filter.
Dropping r21252, no change after applying javap filter.
=== r21280 ===
commit 829f12c1314ecdbcc59ee513d308ce9557adb579
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Mar 26 12:20:18 2010 +0000
Fix for #3204. No review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@21280 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 8106b92..9d8eacd 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -3,12 +3,12 @@ public final class scala.collection.immutable.$colon$colon extends scala.collect
public static final long serialVersionUID;
Signature: J
-private scala.collection.immutable.List tl;
- Signature: Lscala/collection/immutable/List;
-
private java.lang.Object scala$collection$immutable$$colon$colon$$hd;
Signature: Ljava/lang/Object;
+private scala.collection.immutable.List tl;
+ Signature: Lscala/collection/immutable/List;
+
public static {};
Signature: ()V
Code:
Dropping r21285, no change after applying javap filter.
=== r21331 ===
commit 9faca4134dce633ee36345ec653ad6bde944186b
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Mon Apr 5 13:47:27 2010 +0000
Rearranging IndexedSeq/LinearSeq and related work
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@21331 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index eac57d4..e15db2f 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -208,8 +208,8 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
: areturn
-public scala.collection.LinearSeqLike tail();
- Signature: ()Lscala/collection/LinearSeqLike;
+public scala.collection.LinearSeqOptimized tail();
+ Signature: ()Lscala/collection/LinearSeqOptimized;
Code:
: invokevirtual ##; //Method tail:()Lscala/collection/immutable/List;
: areturn
Dropping r21917, no change after applying javap filter.
Dropping r21946, no change after applying javap filter.
Dropping r22157, no change after applying javap filter.
Dropping r22446, no change after applying javap filter.
=== r22458 ===
commit 507a8b7ec8fe1544cccde63959c401b6d37e17b8
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Jul 1 20:32:15 2010 +0000
Removing some dead code from SyncVar and cleaning up a little.
Closes #3490, no review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@22458 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 2ed23aa..7c730bc 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -133,7 +133,11 @@ private void readObject(java.io.ObjectInputStream);
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: aload 4
- : ifnull 125
+ : new ##; //class scala/MatchError
+ : dup
+ : aload 4
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
+ : athrow
: aload 4
: astore 6
: new ##; //class scala/collection/immutable/$colon$colon
@@ -148,11 +152,6 @@ private void readObject(java.io.ObjectInputStream);
: aload 7
: astore_3
: goto 48
- : new ##; //class scala/MatchError
- : dup
- : aload 4
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
- : athrow
public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
Dropping r22698, no change after applying javap filter.
Dropping r22999, no change after applying javap filter.
Dropping r23038, no change after applying javap filter.
=== r23063 ===
commit 4e4b6976f5aa6c777d184d7989a0ea92b80ab296
Author: moors <moors@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Wed Sep 22 20:38:51 2010 +0000
documentation for conforms and friends
no review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@23063 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index cd494d8..fcfbd97 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -13,6 +13,7 @@ public static {};
Signature: ()V
Code:
: ldc2_w ##; //long -8476791151983527571l
+ : ldc2_w ##; //long -8476791151983527571l
: putstatic ##; //Field serialVersionUID:J
: return
=== r23138 ===
commit e7003999a2494d2659c7b806c333fdb3a15439b0
Author: plocinic <plocinic@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Wed Sep 29 09:47:54 2010 +0000
Revert changes related to #1591. no review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@23138 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index fcfbd97..c77207f 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -134,11 +134,7 @@ private void readObject(java.io.ObjectInputStream);
: invokevirtual ##; //Method tl_$eq:(Lscala/collection/immutable/List;)V
: return
: aload 4
- : new ##; //class scala/MatchError
- : dup
- : aload 4
- : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
- : athrow
+ : ifnull 125
: aload 4
: astore 6
: new ##; //class scala/collection/immutable/$colon$colon
@@ -153,6 +149,11 @@ private void readObject(java.io.ObjectInputStream);
: aload 7
: astore_3
: goto 48
+ : new ##; //class scala/MatchError
+ : dup
+ : aload 4
+ : invokespecial ##; //Method scala/MatchError."<init>":(Ljava/lang/Object;)V
+ : athrow
public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.collection.immutable.List);
Signature: (Ljava/lang/Object;Lscala/collection/immutable/List;)Lscala/collection/immutable/$colon$colon;
Dropping r23226, no change after applying javap filter.
Dropping r23494, no change after applying javap filter.
=== r23627 ===
commit f2b30fd1732d82318e1bf776d964630c588fc36a
Author: rytz <rytz@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Tue Nov 30 15:38:56 2010 +0000
Deprecated the @serializable annotation, introduce a new trait "scala.Serializable" which has to be extended instead (cross-platform).
Known issues:
- Companion objects of serializable classes (including case classes) are automatically made serializable. However, they don't extend "Serializable" statically because of the known difficulty (should be done before typing, but hard).
- Writing "case class C() extends Serializable" gives "error: trait Serializable is inherited twice"
- Functions are serializable, but don't extend Serializable dynamically (could be fixed by making FunctionN Serializable - shouldn't we?)
Note that @SerialVersionUID continues to be an annotation; it generates a static field, which is not possible otherwise in scala.
Review by dragos, extempore.
Question to dragos: in JavaPlatform.isMaybeBoxed, why is there a test for "JavaSerializableClass"? Is that correct?
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@23627 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 7e76154..8ff8460 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -1,5 +1,5 @@
Compiled from "List.scala"
-public final class scala.collection.immutable.$colon$colon extends scala.collection.immutable.List implements scala.ScalaObject,scala.Product,java.io.Serializable{
+public final class scala.collection.immutable.$colon$colon extends scala.collection.immutable.List implements scala.ScalaObject,scala.Product,scala.Serializable{
public static final long serialVersionUID;
Signature: J
Dropping r23668, no change after applying javap filter.
=== r23676 ===
commit ced344d22d8d01739dceea5f5f184d2fe8c0c56e
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Dec 3 23:53:58 2010 +0000
Starting the mopping up now that names have some more sense of
their place in the universe. Cleaned up some heavy multi-boolean
logic. Added more documentation on the relationships between entities
in Symbols and some other compiler things which often blur together.
Fun fact: the incorrect usage of nme.ScalaObject in Contexts which I
reported when first broaching the namespace subject became a compile time
error during the writing of this patch, because there is no longer any
such thing as nme.ScalaObject. It's a little bit like magic. No review.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@23676 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 203c8d9..760f590 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -17,18 +17,6 @@ public static {};
: putstatic ##; //Field serialVersionUID:J
: return
-public scala.collection.immutable.List copy$default$2();
- Signature: ()Lscala/collection/immutable/List;
- Code:
- : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
- : areturn
-
-public java.lang.Object copy$default$1();
- Signature: ()Ljava/lang/Object;
- Code:
- : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
- : areturn
-
public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
Signature: ()Ljava/lang/Object;
Code:
@@ -165,6 +153,18 @@ public scala.collection.immutable.$colon$colon copy(java.lang.Object, scala.coll
: invokespecial ##; //Method "<init>":(Ljava/lang/Object;Lscala/collection/immutable/List;)V
: areturn
+public scala.collection.immutable.List copy$default$2();
+ Signature: ()Lscala/collection/immutable/List;
+ Code:
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
+ : areturn
+
+public java.lang.Object copy$default$1();
+ Signature: ()Ljava/lang/Object;
+ Code:
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : areturn
+
public java.lang.Object hd$1();
Signature: ()Ljava/lang/Object;
Code:
Dropping r23788, no change after applying javap filter.
Dropping r24029, no change after applying javap filter.
Dropping r24414, no change after applying javap filter.
Dropping r24544, no change after applying javap filter.
Dropping r24547, no change after applying javap filter.
Dropping r24796, no change after applying javap filter.
=== r24803 ===
commit 1febf2a0f74990a222e07dbd624874bcbaaa6409
Author: odersky <odersky@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Apr 21 17:21:28 2011 +0000
Added bridge method capability to compiler. Some tweaks to reflect generic. No review (yet).
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@24803 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index f96defc..5a15b19 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -195,8 +195,8 @@ public java.lang.Object productElement(int);
: iload_1
: istore_2
: iload_2
- : 46;
: 39;
+ : 46;
default: 24 }
: new ##; //class java/lang/IndexOutOfBoundsException
: dup
@@ -205,8 +205,8 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
: athrow
- : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
: invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
+ : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
: areturn
public scala.collection.LinearSeqOptimized tail();
Dropping r24839, no change after applying javap filter.
Dropping r25229, no change after applying javap filter.
Dropping r25292, no change after applying javap filter.
=== r25336 ===
commit 6b9cdcd09dd4fca0835e07551aa8e7064074d31f
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Thu Jul 21 23:35:54 2011 +0000
As per discussion documented in SI-1799, brought back the ProductN
traits and synthesized them into case classes. It's -Xexperimental for
now because there may be minor implications for existing code which
should be discussed. And also because I snuck in another "improvement"
but it's probably too dangerous to be touching productIterator directly
and it should go into something else.
scala> case class Bippy(x: Int, y: Int)
defined class Bippy
scala> Bippy(5, 10).productIterator
res0: Iterator[Int] = non-empty iterator
^^^----- as opposed to Iterator[Any]
There is an even better idea available than lubbing the case class field
types: it starts with "H" and ends with "List"...
Review by oderksy.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@25336 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 5f79684..90c754b 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -205,8 +205,8 @@ public java.lang.Object productElement(int);
: invokevirtual ##; //Method java/lang/Object.toString:()Ljava/lang/String;
: invokespecial ##; //Method java/lang/IndexOutOfBoundsException."<init>":(Ljava/lang/String;)V
: athrow
- : invokevirtual ##; //Method hd$1:()Ljava/lang/Object;
- : invokevirtual ##; //Method tl$1:()Lscala/collection/immutable/List;
+ : invokevirtual ##; //Method scala$collection$immutable$$colon$colon$$hd:()Ljava/lang/Object;
+ : invokevirtual ##; //Method tl:()Lscala/collection/immutable/List;
: areturn
public scala.collection.LinearSeqOptimized tail();
=== r25410 ===
commit 418cd6fe92e54ddf2768509e6b825beef6ef6fb6
Author: extempore <extempore@5e8d7ff9-d8ef-0310-90f0-a4852d11357a>
Date: Fri Jul 29 15:38:50 2011 +0000
Added two new compiler options:
-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.
git-svn-id: http://lampsvn.epfl.ch/svn-repos/scala/scala/trunk@25410 5e8d7ff9-d8ef-0310-90f0-a4852d11357a
diff --git a/scala/collection/immutable/$colon$colon.class b/scala/collection/immutable/$colon$colon.class
index 90c754b..28ddfe3 100644
--- a/scala/collection/immutable/$colon$colon.class
+++ b/scala/collection/immutable/$colon$colon.class
@@ -17,7 +17,7 @@ public static {};
: putstatic ##; //Field serialVersionUID:J
: return
-public final java.lang.Object scala$collection$immutable$$colon$colon$$hd();
+public java.lang.Object scala$collection$immutable$$colon$colon$$hd();
Signature: ()Ljava/lang/Object;
Code:
: getfield ##; //Field scala$collection$immutable$$colon$colon$$hd:Ljava/lang/Object;
Found 33 revisions of interest.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment