(&self, state: &mut H)
| 583 | function_ptr: Box<Operand>, // Operand holding the function pointer object |
| 584 | args: Vec<Operand>, // Arguments to the function |
| 585 | signature: Signature, // Function pointer signature |
| 586 | }, |
| 587 | /// Creates a stateless JVM functional-interface instance through |
| 588 | /// `LambdaMetafactory`. The implementation target must have the same |
| 589 | /// flattened JVM descriptor as the SAM signature. |
| 590 | CreateFunctionPointer { |
| 591 | dest: String, |
| 592 | interface_name: String, |
| 593 | signature: Signature, |
| 594 | target_class_name: String, |
| 595 | target_method_name: String, |
| 596 | }, |
| 597 | InvokeInterface { |
| 598 | class_name: String, // JVM interface name (e.g., MyTrait) |
| 599 | method_name: String, // Name of the method to call |
| 600 | method_ty: Signature, // Signature of the method (input/output types) |
| 601 | args: Vec<Operand>, // Arguments to the function |
| 602 | dest: Option<String>, // Optional destination variable for the return value |
| 603 | operand: Operand, // The object reference (this) for the method call |
| 604 | }, |
| 605 | Move { |
| 606 | dest: String, |
| 607 | src: Operand, // Source operand (could be Variable or Constant, though in this context, it's likely Variable) |
| 608 | }, |
| 609 | ThrowNewWithMessage { |
| 610 | exception_class: String, // e.g., "java/lang/RuntimeException" |
| 611 | message: String, // The message from the panic/assert |
| 612 | }, |
| 613 | Switch { |
| 614 | discr: Operand, // The value being switched on |
| 615 | // Vec of (Constant Value, Target Label) pairs |
| 616 | targets: Vec<(Constant, String)>, |
| 617 | otherwise: String, // Label for the default case |
| 618 | }, |
| 619 | NewArray { |
| 620 | dest: String, |
| 621 | element_type: Type, |
| 622 | size: Operand, |
nothing calls this directly
no outgoing calls
no test coverage detected