Hi all,
ASM doesn't like too much weird method names,
exactly the ASMifier, that take a binary class and generate the Java code that 
will create the same binary class, doesn't work well with the method named 
"\%pattern\%RecordSubType\%(ILjava\|lang\|String\?)".

I have two questions:
- why do we need a description of a pattern inside a record class given that 
the Record attribute already provides that description (that is accessible 
using Class.getRecordComponents()) ?
  A record is already able to describe itself, that's its purpose, why do we 
need another way of describing it ?
- why the method that return a PatternHandle is using a mangled name like this ?
  Given that the constant dynamic also use the same encoding ??

RĂ©mi

public static java.lang.runtime.PatternHandle 
\%pattern\%RecordSubType\%(ILjava\|lang\|String\?)();
    descriptor: ()Ljava/lang/runtime/PatternHandle;
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: ldc           #29                 // Dynamic 
#1:"\\%pattern\\%RecordSubType\\%(ILjava\\|lang\\|String\\?)":Ljava/lang/runtime/PatternHandle;
         2: areturn
      LineNumberTable:
        line 9: 0

Reply via email to