public class jakarta.el.LambdaExpression
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: jakarta.el.LambdaExpression
super_class: java.lang.Object
{
private final java.util.List<java.lang.String> formalParameters;
descriptor: Ljava/util/List;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/List<Ljava/lang/String;>;
private final jakarta.el.ValueExpression expression;
descriptor: Ljakarta/el/ValueExpression;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.util.Map<java.lang.String, java.lang.Object> nestedArguments;
descriptor: Ljava/util/Map;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
private jakarta.el.ELContext context;
descriptor: Ljakarta/el/ELContext;
flags: (0x0002) ACC_PRIVATE
public void <init>(java.util.List<java.lang.String>, jakarta.el.ValueExpression);
descriptor: (Ljava/util/List;Ljakarta/el/ValueExpression;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield jakarta.el.LambdaExpression.nestedArguments:Ljava/util/Map;
2: aload 0
aconst_null
putfield jakarta.el.LambdaExpression.context:Ljakarta/el/ELContext;
3: aload 0
aload 1
putfield jakarta.el.LambdaExpression.formalParameters:Ljava/util/List;
4: aload 0
aload 2
putfield jakarta.el.LambdaExpression.expression:Ljakarta/el/ValueExpression;
5: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljakarta/el/LambdaExpression;
0 6 1 formalParameters Ljava/util/List<Ljava/lang/String;>;
0 6 2 expression Ljakarta/el/ValueExpression;
Signature: (Ljava/util/List<Ljava/lang/String;>;Ljakarta/el/ValueExpression;)V
MethodParameters:
Name Flags
formalParameters
expression
public void setELContext(jakarta.el.ELContext);
descriptor: (Ljakarta/el/ELContext;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
putfield jakarta.el.LambdaExpression.context:Ljakarta/el/ELContext;
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljakarta/el/LambdaExpression;
0 2 1 context Ljakarta/el/ELContext;
MethodParameters:
Name Flags
context
public java.lang.Object invoke(jakarta.el.ELContext, java.lang.Object[]);
descriptor: (Ljakarta/el/ELContext;[Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=8, locals=9, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokestatic java.util.Objects.requireNonNull:(Ljava/lang/Object;)Ljava/lang/Object;
pop
1: iconst_0
istore 3
start local 3 2: aload 0
getfield jakarta.el.LambdaExpression.formalParameters:Ljava/util/List;
ifnull 4
3: aload 0
getfield jakarta.el.LambdaExpression.formalParameters:Ljava/util/List;
invokeinterface java.util.List.size:()I
istore 3
4: StackMap locals: int
StackMap stack:
iconst_0
istore 4
start local 4 5: aload 2
ifnull 7
6: aload 2
arraylength
istore 4
7: StackMap locals: int
StackMap stack:
iload 3
iload 4
if_icmple 13
8: new jakarta.el.ELException
dup
aload 1
9: ldc "lambdaExpression.tooFewArgs"
iconst_2
anewarray java.lang.Object
dup
iconst_0
10: iload 4
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
dup
iconst_1
11: iload 3
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
aastore
12: invokestatic jakarta.el.Util.message:(Ljakarta/el/ELContext;Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokespecial jakarta.el.ELException.<init>:(Ljava/lang/String;)V
athrow
13: StackMap locals:
StackMap stack:
new java.util.HashMap
dup
aload 0
getfield jakarta.el.LambdaExpression.nestedArguments:Ljava/util/Map;
invokespecial java.util.HashMap.<init>:(Ljava/util/Map;)V
astore 5
start local 5 14: iconst_0
istore 6
start local 6 15: goto 18
16: StackMap locals: java.util.Map int
StackMap stack:
aload 5
aload 0
getfield jakarta.el.LambdaExpression.formalParameters:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast java.lang.String
aload 2
iload 6
aaload
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
17: iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
iload 3
if_icmplt 16
end local 6 19: aload 1
aload 5
invokevirtual jakarta.el.ELContext.enterLambdaScope:(Ljava/util/Map;)V
20: aload 0
getfield jakarta.el.LambdaExpression.expression:Ljakarta/el/ValueExpression;
aload 1
invokevirtual jakarta.el.ValueExpression.getValue:(Ljakarta/el/ELContext;)Ljava/lang/Object;
astore 6
start local 6 21: aload 6
instanceof jakarta.el.LambdaExpression
ifeq 25
22: aload 6
checkcast jakarta.el.LambdaExpression
getfield jakarta.el.LambdaExpression.nestedArguments:Ljava/util/Map;
23: aload 5
24: invokeinterface java.util.Map.putAll:(Ljava/util/Map;)V
25: StackMap locals: jakarta.el.LambdaExpression jakarta.el.ELContext java.lang.Object[] int int java.util.Map java.lang.Object
StackMap stack:
aload 6
astore 8
26: aload 1
invokevirtual jakarta.el.ELContext.exitLambdaScope:()V
27: aload 8
areturn
end local 6 28: StackMap locals: jakarta.el.LambdaExpression jakarta.el.ELContext java.lang.Object[] int int java.util.Map
StackMap stack: java.lang.Throwable
astore 7
29: aload 1
invokevirtual jakarta.el.ELContext.exitLambdaScope:()V
30: aload 7
athrow
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 31 0 this Ljakarta/el/LambdaExpression;
0 31 1 context Ljakarta/el/ELContext;
0 31 2 args [Ljava/lang/Object;
2 31 3 formalParamCount I
5 31 4 argCount I
14 31 5 lambdaArguments Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
15 19 6 i I
21 28 6 result Ljava/lang/Object;
Exception table:
from to target type
20 26 28 any
Exceptions:
throws jakarta.el.ELException
MethodParameters:
Name Flags
context
args
public java.lang.Object invoke(java.lang.Object[]);
descriptor: ([Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 0
getfield jakarta.el.LambdaExpression.context:Ljakarta/el/ELContext;
aload 1
invokevirtual jakarta.el.LambdaExpression.invoke:(Ljakarta/el/ELContext;[Ljava/lang/Object;)Ljava/lang/Object;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Ljakarta/el/LambdaExpression;
0 1 1 args [Ljava/lang/Object;
MethodParameters:
Name Flags
args
}
SourceFile: "LambdaExpression.java"