Helper to get a one constant of a type compatible with an operand
(op: &Operand)
| 765 | ty: Type, |
| 766 | }, |
| 767 | /// A call to a generated pure helper used to construct a constant whose |
| 768 | /// JVM representation cannot be expressed as a constructor alone. |
| 769 | StaticCall { |
| 770 | owner_class: String, |
| 771 | method_name: String, |
| 772 | args: Vec<Constant>, |
| 773 | /// Declared JVM parameter types when they are wider than the concrete |
| 774 | /// constant carriers (for example, a SliceView passed as Object). |
| 775 | param_types: Vec<Type>, |
| 776 | ty: Type, |
| 777 | }, |
| 778 | /// A provenance-free Rust pointer represented by its exposed address. |
| 779 | /// The pointee type keeps address-only constants from degenerating into an |
| 780 | /// ambiguous `Pointer<Unit>` carrier during representation adaptation. |
| 781 | PointerAddress { |
| 782 | address: u64, |
| 783 | view_size: u64, |
| 784 | pointee: Box<Type>, |
| 785 | }, |
| 786 | /// A pointer into an anonymous repeated-byte CTFE allocation. This compact |
| 787 | /// form preserves the allocation without duplicating a large byte image. |
| 788 | RepeatedBytePointer { |
| 789 | identity: String, |
| 790 | byte: u8, |
| 791 | length: u64, |
| 792 | offset: u64, |
| 793 | view_size: u64, |
| 794 | alignment: u64, |
| 795 | view_codec: Option<String>, |
| 796 | pointee: Box<Type>, |
| 797 | }, |
| 798 | /// A pointer into an arbitrary provenance-free CTFE byte allocation. |