This commit is contained in:
Redkale
2018-03-24 11:28:25 +08:00
parent f8c92f1ec4
commit c0664bb0a9

View File

@@ -59,22 +59,21 @@ public final class Utility {
private static final String functionClassBinary = "cafebabe00000034002f0a00090022070023090008002409000800250a000200260700"
+ "270a0008002807002907002a07002b010006756e736166650100114c73756e2f6d6973632f556e736166653b01000266640100014a0100063c69"
+ "6e69743e010016284c6a6176612f6c616e672f4f626a6563743b4a2956010004436f646501000f4c696e654e756d6265725461626c650100124c"
+ "6f63616c5661726961626c655461626c65010004746869730100294c6f72672f7265646b616c652f7574696c2f416e6f6e796d6f757341727261"
+ "7946756e6374696f6e3b0100036f626a0100124c6a6176612f6c616e672f4f626a6563743b0100056170706c79010016284c6a6176612f6c616e"
+ "672f4f626a6563743b295b43010001740100236f72672e6e65746265616e732e536f757263654c6576656c416e6e6f746174696f6e730100144c"
+ "6a6176612f6c616e672f4f766572726964653b010026284c6a6176612f6c616e672f4f626a6563743b294c6a6176612f6c616e672f4f626a6563"
+ "743b0100095369676e61747572650100454c6a6176612f6c616e672f4f626a6563743b4c6a6176612f7574696c2f66756e6374696f6e2f46756e"
+ "6374696f6e3c4c6a6176612f6c616e672f4f626a6563743b5b433e3b01000a536f7572636546696c6501001b416e6f6e796d6f75734172726179"
+ "46756e6374696f6e2e6a6176610c000f002c01000f73756e2f6d6973632f556e736166650c000b000c0c000d000e0c002d002e0100025b430c00"
+ "1800190100276f72672f7265646b616c652f7574696c2f416e6f6e796d6f7573417272617946756e6374696f6e0100106a6176612f6c616e672f"
+ "4f626a65637401001b6a6176612f7574696c2f66756e6374696f6e2f46756e6374696f6e0100032829560100096765744f626a65637401002728"
+ "4c6a6176612f6c616e672f4f626a6563743b4a294c6a6176612f6c616e672f4f626a6563743b0031000800090001000a00020010000b000c0000"
+ "0010000d000e000000030001000f0010000100110000005c00030004000000122ab700012a2bc00002b500032a20b50004b10000000200120000"
+ "001200040000000e0004000f000c0010001100110013000000200003000000120014001500000000001200160017000100000012000d000e0002"
+ "000100180019000200110000004400040002000000102ab400032b2ab40004b60005c00006b00000000200120000000600010000001500130000"
+ "001600020000001000140015000000000010001a00170001001b000000060001001c000010410018001d00020011000000300002000200000006"
+ "2a2bb60007b00000000200120000000600010000000800130000000c000100000006001400150000001b000000060001001c00000002001e0000"
+ "0002001f0020000000020021";
+ "6f63616c5661726961626c655461626c650100047468697301001c4c636f6d2f416e6f6e796d6f7573417272617946756e6374696f6e3b010003"
+ "6f626a0100124c6a6176612f6c616e672f4f626a6563743b0100056170706c79010016284c6a6176612f6c616e672f4f626a6563743b295b4301"
+ "0001740100236f72672e6e65746265616e732e536f757263654c6576656c416e6e6f746174696f6e730100144c6a6176612f6c616e672f4f7665"
+ "72726964653b010026284c6a6176612f6c616e672f4f626a6563743b294c6a6176612f6c616e672f4f626a6563743b0100095369676e61747572"
+ "650100454c6a6176612f6c616e672f4f626a6563743b4c6a6176612f7574696c2f66756e6374696f6e2f46756e6374696f6e3c4c6a6176612f6c"
+ "616e672f4f626a6563743b5b433e3b01000a536f7572636546696c6501001b416e6f6e796d6f7573417272617946756e6374696f6e2e6a617661"
+ "0c000f002c01000f73756e2f6d6973632f556e736166650c000b000c0c000d000e0c002d002e0100025b430c0018001901001a636f6d2f416e6f"
+ "6e796d6f7573417272617946756e6374696f6e0100106a6176612f6c616e672f4f626a65637401001b6a6176612f7574696c2f66756e6374696f"
+ "6e2f46756e6374696f6e0100032829560100096765744f626a656374010027284c6a6176612f6c616e672f4f626a6563743b4a294c6a6176612f"
+ "6c616e672f4f626a6563743b0031000800090001000a00020010000b000c00000010000d000e000000030001000f0010000100110000005c0003"
+ "0004000000122ab700012a2bc00002b500032a20b50004b10000000200120000001200040000001200040013000c001400110015001300000020"
+ "0003000000120014001500000000001200160017000100000012000d000e0002000100180019000200110000004400040002000000102ab40003"
+ "2b2ab40004b60005c00006b00000000200120000000600010000001900130000001600020000001000140015000000000010001a00170001001b"
+ "000000060001001c000010410018001d000200110000003000020002000000062a2bb60007b00000000200120000000600010000000c00130000"
+ "000c000100000006001400150000001b000000060001001c00000002001e00000002001f0020000000020021";
private static final Function<Object, char[]> strFunction;
@@ -102,7 +101,7 @@ public final class Utility {
public final Class<?> loadClass(String name, byte[] b) {
return defineClass(name, b, 0, b.length);
}
}.loadClass("org.redkale.util.AnonymousArrayFunction", bytes);
}.loadClass("com.AnonymousArrayFunction", bytes);
strFunction0 = (Function<Object, char[]>) creatorClazz.getDeclaredConstructor(Object.class, long.class).newInstance(usafe, fd1);
sbFunction0 = (Function<Object, char[]>) creatorClazz.getDeclaredConstructor(Object.class, long.class).newInstance(usafe, fd2);
@@ -134,11 +133,6 @@ public final class Utility {
}
}
public static void main(String[] args) throws Throwable {
System.out.println(charArray("aaa").length);
System.out.println(charArray(new StringBuilder("bbbb")).length);
}
private Utility() {
}