Created
April 17, 2017 17:37
-
-
Save rednaxelafx/99623329d8ecb62336481c62ca2f1bcc to your computer and use it in GitHub Desktop.
Figuring out what bytecode scala.Predef$.augmentString corresponded to
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ sudo $JAVA_HOME/bin/java -cp $JAVA_HOME/lib/sa-jdi.jar sun.jvm.hotspot.CLHSDB | |
Password: | |
hsdb> attach 15168 | |
Attaching to process 15168, please wait... | |
hsdb> class scala.Predef$ | |
scala/Predef$ @0x00000007c003eb60 | |
hsdb> print 0x00000007c003eb60 | |
public final class scala.Predef$ @0x00000007c003eb60 | |
Super Class | |
public abstract class scala.LowPriorityImplicits @0x00000007c003e8c0 | |
Interfaces | |
public abstract interface scala.DeprecatedPredef @0x00000007c003e6d8 | |
Fields | |
public static final scala.Predef$ MODULE$; (offset = 104) | |
private final scala.collection.immutable.Map$ Map; (offset = 12) | |
private final scala.collection.immutable.Set$ Set; (offset = 16) | |
private final scala.reflect.ClassManifestFactory$ ClassManifest; (offset = 20) | |
private final scala.reflect.ManifestFactory$ Manifest; (offset = 24) | |
private final scala.reflect.NoManifest$ NoManifest; (offset = 28) | |
private final scala.collection.generic.CanBuildFrom StringCanBuildFrom; [signature Lscala/collection/generic/CanBuildFrom<Ljava/lang/String;Ljava/lang/Object;Ljava/lang/String;>;] (offset = 32) | |
private final scala.Predef$$less$colon$less singleton_$less$colon$less; [signature Lscala/Predef$$less$colon$less<Ljava/lang/Object;Ljava/lang/Object;>;] (offset = 36) | |
public final scala.Predef$$eq$colon$eq scala$Predef$$singleton_$eq$colon$eq; [signature Lscala/Predef$$eq$colon$eq<Ljava/lang/Object;Ljava/lang/Object;>;] (offset = 40) | |
Methods | |
private void <init>() @0x0000000104cc11d8; | |
static void <clinit>() @0x0000000104cbd490; | |
public void println(java.lang.Object) @0x0000000104cbf968; | |
public void println() @0x0000000104cbf8b8; | |
public java.lang.Object identity(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbe850; | |
public void print(java.lang.Object) @0x0000000104cbf810; | |
public java.lang.String readLine(java.lang.String, scala.collection.Seq) [signature (Ljava.lang.String;Lscala.collection.Seq<Ljava.lang.Object;>;)Ljava.lang.String;] @0x0000000104cbda10; | |
public java.lang.String readLine() @0x0000000104cbd950; | |
public int readInt() @0x0000000104cbdd30; | |
public char readChar() @0x0000000104cbdc90; | |
public void printf(java.lang.String, scala.collection.Seq) [signature (Ljava.lang.String;Lscala.collection.Seq<Ljava.lang.Object;>;)V] @0x0000000104cbfa30; | |
public scala.runtime.Nothing$ error(java.lang.String) @0x0000000104cbea60; | |
public float readFloat() @0x0000000104cbde70; | |
public scala.collection.immutable.Map$ Map() @0x0000000104cbe310; | |
public scala.collection.immutable.Set$ Set() @0x0000000104cbe3b0; | |
public scala.reflect.ClassManifestFactory$ ClassManifest() @0x0000000104cbe450; | |
public scala.reflect.ManifestFactory$ Manifest() @0x0000000104cbe4f0; | |
public scala.reflect.NoManifest$ NoManifest() @0x0000000104cbe590; | |
public scala.collection.generic.CanBuildFrom StringCanBuildFrom() [signature ()Lscala.collection.generic.CanBuildFrom<Ljava.lang.String;Ljava.lang.Object;Ljava.lang.String;>;] @0x0000000104cbf600; | |
public java.lang.Object any2ArrowAssoc(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbd540; | |
public java.lang.Object any2Ensuring(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbd5f0; | |
public java.lang.Object any2stringfmt(java.lang.Object) [signature (Ljava.lang.Object;)Ljava.lang.Object;] @0x0000000104cbd6a0; | |
public java.lang.Throwable exceptionWrapper(java.lang.Throwable) @0x0000000104cbd750; | |
public java.lang.CharSequence seqToCharSequence(scala.collection.IndexedSeq) [signature (Lscala.collection.IndexedSeq<Ljava.lang.Object;>;)Ljava.lang.CharSequence;] @0x0000000104cbd800; | |
public java.lang.CharSequence arrayToCharSequence(char[]) @0x0000000104cbd8b0; | |
public boolean readBoolean() @0x0000000104cbdab0; | |
public byte readByte() @0x0000000104cbdb50; | |
public short readShort() @0x0000000104cbdbf0; | |
public long readLong() @0x0000000104cbddd0; | |
public double readDouble() @0x0000000104cbdf10; | |
public scala.collection.immutable.List readf(java.lang.String) [signature (Ljava.lang.String;)Lscala.collection.immutable.List<Ljava.lang.Object;>;] @0x0000000104cbdfc0; | |
public java.lang.Object readf1(java.lang.String) @0x0000000104cbe070; | |
public scala.Tuple2 readf2(java.lang.String) [signature (Ljava.lang.String;)Lscala.Tuple2<Ljava.lang.Object;Ljava.lang.Object;>;] @0x0000000104cbe120; | |
public scala.Tuple3 readf3(java.lang.String) [signature (Ljava.lang.String;)Lscala.Tuple3<Ljava.lang.Object;Ljava.lang.Object;Ljava.lang.Object;>;] @0x0000000104cbe1d0; | |
public java.lang.Class classOf() [signature <T:Ljava.lang.Object;>()Ljava.lang.Class<TT;>;] @0x0000000104cbe270; | |
public scala.reflect.Manifest manifest(scala.reflect.Manifest) [signature <T:Ljava.lang.Object;>(Lscala.reflect.Manifest<TT;>;)Lscala.reflect.Manifest<TT;>;] @0x0000000104cbe640; | |
public scala.reflect.ClassTag classManifest(scala.reflect.ClassTag) [signature <T:Ljava.lang.Object;>(Lscala.reflect.ClassTag<TT;>;)Lscala.reflect.ClassTag<TT;>;] @0x0000000104cbe6f0; | |
public scala.reflect.OptManifest optManifest(scala.reflect.OptManifest) [signature <T:Ljava.lang.Object;>(Lscala.reflect.OptManifest<TT;>;)Lscala.reflect.OptManifest<TT;>;] @0x0000000104cbe7a0; | |
public java.lang.Object implicitly(java.lang.Object) [signature <T:Ljava.lang.Object;>(TT;)TT;] @0x0000000104cbe900; | |
public java.lang.Object locally(java.lang.Object) [signature <T:Ljava.lang.Object;>(TT;)TT;] @0x0000000104cbe9b0; | |
public void assert(boolean) @0x0000000104cbeb18; | |
public final void assert(boolean, scala.Function0) [signature (ZLscala.Function0<Ljava.lang.Object;>;)V] @0x0000000104cbebf8; | |
public final void assume(boolean, scala.Function0) [signature (ZLscala.Function0<Ljava.lang.Object;>;)V] @0x0000000104cbed90; | |
public void assume(boolean) @0x0000000104cbecb0; | |
public final void require(boolean, scala.Function0) [signature (ZLscala.Function0<Ljava.lang.Object;>;)V] @0x0000000104cbef28; | |
public void require(boolean) @0x0000000104cbee48; | |
public scala.runtime.Nothing$ $qmark$qmark$qmark() @0x0000000104cbefd0; | |
public java.lang.Object ArrowAssoc(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbf080; | |
public java.lang.Object Ensuring(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbf130; | |
public java.lang.Object StringFormat(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbf1e0; | |
public java.lang.Object StringAdd(java.lang.Object) @0x0000000104cbf290; | |
public java.lang.Object any2stringadd(java.lang.Object) [signature <A:Ljava.lang.Object;>(TA;)TA;] @0x0000000104cbf340; | |
public java.lang.Throwable RichException(java.lang.Throwable) @0x0000000104cbf3f0; | |
public scala.Predef$SeqCharSequence SeqCharSequence(scala.collection.IndexedSeq) [signature (Lscala.collection.IndexedSeq<Ljava.lang.Object;>;)Lscala.Predef$SeqCharSequence;] @0x0000000104cbf4a8; | |
public scala.Predef$ArrayCharSequence ArrayCharSequence(char[]) @0x0000000104cbf558; | |
public java.lang.String augmentString(java.lang.String) @0x0000000104cbf6b0; | |
public java.lang.String unaugmentString(java.lang.String) @0x0000000104cbf760; | |
public scala.Tuple2 tuple2ToZippedOps(scala.Tuple2) [signature <T1:Ljava.lang.Object;T2:Ljava.lang.Object;>(Lscala.Tuple2<TT1;TT2;>;)Lscala.Tuple2<TT1;TT2;>;] @0x0000000104cbfae0; | |
public scala.Tuple3 tuple3ToZippedOps(scala.Tuple3) [signature <T1:Ljava.lang.Object;T2:Ljava.lang.Object;T3:Ljava.lang.Object;>(Lscala.Tuple3<TT1;TT2;TT3;>;)Lscala.Tuple3<TT1;TT2;TT3;>;] @0x0000000104cbfb90; | |
public scala.collection.mutable.ArrayOps genericArrayOps(java.lang.Object) [signature <T:Ljava.lang.Object;>(Ljava.lang.Object;)Lscala.collection.mutable.ArrayOps<TT;>;] @0x0000000104cbfd48; | |
public scala.collection.mutable.ArrayOps booleanArrayOps(boolean[]) [signature ([Z)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cbfe00; | |
public scala.collection.mutable.ArrayOps byteArrayOps(byte[]) [signature ([B)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cbfeb8; | |
public scala.collection.mutable.ArrayOps charArrayOps(char[]) [signature ([C)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cbff70; | |
public scala.collection.mutable.ArrayOps doubleArrayOps(double[]) [signature ([D)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cc0028; | |
public scala.collection.mutable.ArrayOps floatArrayOps(float[]) [signature ([F)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cc00e0; | |
public scala.collection.mutable.ArrayOps intArrayOps(int[]) [signature ([I)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cc0198; | |
public scala.collection.mutable.ArrayOps longArrayOps(long[]) [signature ([J)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cc0250; | |
public scala.collection.mutable.ArrayOps shortArrayOps(short[]) [signature ([S)Lscala.collection.mutable.ArrayOps<Ljava.lang.Object;>;] @0x0000000104cc03c0; | |
public scala.collection.mutable.ArrayOps unitArrayOps(scala.runtime.BoxedUnit[]) [signature ([Lscala.runtime.BoxedUnit;)Lscala.collection.mutable.ArrayOps<Lscala.runtime.BoxedUnit;>;] @0x0000000104cc0478; | |
public java.lang.Byte byte2Byte(byte) @0x0000000104cc0528; | |
public java.lang.Short short2Short(short) @0x0000000104cc05d8; | |
public java.lang.Character char2Character(char) @0x0000000104cc0688; | |
public java.lang.Integer int2Integer(int) @0x0000000104cc0738; | |
public java.lang.Long long2Long(long) @0x0000000104cc07e8; | |
public java.lang.Float float2Float(float) @0x0000000104cc0898; | |
public java.lang.Double double2Double(double) @0x0000000104cc0948; | |
public java.lang.Boolean boolean2Boolean(boolean) @0x0000000104cc09f8; | |
public byte Byte2byte(java.lang.Byte) @0x0000000104cc0aa8; | |
public short Short2short(java.lang.Short) @0x0000000104cc0b58; | |
public char Character2char(java.lang.Character) @0x0000000104cc0c08; | |
public int Integer2int(java.lang.Integer) @0x0000000104cc0cb8; | |
public long Long2long(java.lang.Long) @0x0000000104cc0d68; | |
public float Float2float(java.lang.Float) @0x0000000104cc0e18; | |
public double Double2double(java.lang.Double) @0x0000000104cc0ec8; | |
public boolean Boolean2boolean(java.lang.Boolean) @0x0000000104cc0f78; | |
public scala.Predef$$less$colon$less $conforms() [signature <A:Ljava.lang.Object;>()Lscala.Predef$$less$colon$less<TA;TA;>;] @0x0000000104cc1020; | |
public scala.Predef$$less$colon$less conforms() [signature <A:Ljava.lang.Object;>()Lscala.Predef$$less$colon$less<TA;TA;>;] @0x0000000104cc10c8; | |
public scala.collection.mutable.ArrayOps refArrayOps(java.lang.Object[]) [signature <T:Ljava.lang.Object;>([TT;)Lscala.collection.mutable.ArrayOps<TT;>;] @0x0000000104cc0308; | |
Constant Pool | |
Constant Pool of [public final class scala.Predef$ @0x00000007c003eb60] @0x0000000104cbaeb8 | |
hsdb> jdis 0x0000000104cbf6b0 | |
public java.lang.String augmentString(java.lang.String) @0x0000000104cbf6b0 | |
Holder Class | |
public final class scala.Predef$ @0x00000007c003eb60 | |
Bytecode | |
line bci bytecode | |
308 0 aload_1 | |
308 1 areturn | |
Constant Pool | |
Constant Pool of [public final class scala.Predef$ @0x00000007c003eb60] @0x0000000104cbaeb8 | |
hsdb> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment