open import Agda.Builtin.Nat using () renaming (Nat to )

record X : Set where
  field id : 
open X public

exX : X
exX .id = 42

record Y : Set where
  field id : 
open Y public

exY : Y
exY = λ where .id  42

idX : X  
idX = id

idY : Y  
idY = id

{-# FOREIGN AGDA2RUST
pub fn main() {
  println!("{}:\t {} | {} | {} | {} ", module_path!(),
    X·id(X{id: 42}),
    Y·id(Y{id: 42}),
    idX(exX()),
    idY(exY()),
  );
}
#-}

open import Agda.Builtin.Nat

test : Nat
test = X.id (record {id = 42})
     + Y.id (record {id = 42})
     + idX exX
     + idY exY
{-# COMPILE AGDA2LAMBOX test #-}
Debug λ☐ Rocq
  ↪  
WASM C OCaml CakeML Rust Elm
  ↪  
  ↪