(
locals: &[FrameValue],
constant_pool: &mut InternedConstantPool,
verification_class_cache: &mut HashMap<String, u16>,
)
| 1583 | I::Putfield(_) => { |
| 1584 | state.pop(context, instruction_index)?; |
| 1585 | state.pop_reference(context, instruction_index)?; |
| 1586 | } |
| 1587 | I::Invokevirtual(method_ref) | I::Invokespecial(method_ref) => { |
| 1588 | let method = method_ref_info(constant_pool, *method_ref, false)?; |
| 1589 | apply_invoke( |
| 1590 | &mut state, |
| 1591 | &method, |
| 1592 | false, |
| 1593 | matches!(instruction, I::Invokespecial(_)), |
| 1594 | context, |
| 1595 | instruction_index, |
| 1596 | )?; |
| 1597 | } |
| 1598 | I::Invokestatic(method_ref) => { |
| 1599 | let method = static_method_ref_info(constant_pool, *method_ref)?; |
| 1600 | apply_invoke(&mut state, &method, true, false, context, instruction_index)?; |
| 1601 | } |
| 1602 | I::Invokedynamic(invoke_dynamic_ref) => { |
| 1603 | let method = invoke_dynamic_info(constant_pool, *invoke_dynamic_ref)?; |
| 1604 | apply_invoke(&mut state, &method, true, false, context, instruction_index)?; |
| 1605 | } |
| 1606 | I::Invokeinterface(method_ref, _) => { |
| 1607 | let method = method_ref_info(constant_pool, *method_ref, true)?; |
| 1608 | apply_invoke( |
| 1609 | &mut state, |
| 1610 | &method, |
no test coverage detected