elara
Safe HaskellNone
LanguageGHC2024

Elara.JVM.Query

Description

JVM Backend query implementations for the Rock query system.

This module implements the queries for JVM lowering, class file emission, and serialization. Each query is atomic and operates on a single module.

Synopsis

Documentation

runGetJVMIRModuleQuery :: forall (es :: [Effect]). (QueryEffects es, Rock Query :> es) => ModuleName -> Eff es Module Source #

Lower a Core module to JVM IR

runGetJVMClassFilesQuery :: forall (es :: [Effect]). (QueryEffects es, Rock Query :> es) => ModuleName -> Eff es [ClassFile] Source #

Emit JVM IR to ClassFiles

runGetJVMClassBytesQuery :: forall (es :: [Effect]). (QueryEffects es, Rock Query :> es) => ModuleName -> Eff es [(FilePath, LByteString)] Source #

Serialize ClassFiles to bytes with file paths

Orphan instances