package Ġcom . lo ren z oog . pl ank . compiler . instructions Ċ Ċ import Ġcom . lo ren z oog . pl ank . compiler . Compiler Context Ċ import Ġcom . lo ren z oog . pl ank . shared . Either Ċ import Ġorg . llvm 4 j . llvm 4 j . Value Ċ Ċ type alias ĠCode gen Result Ġ= ĠEither < Code gen Error , ĠValue > Ċ Ċ abstract Ġclass ĠCompiler Instruction Ġinternal Ġconstructor () Ġ{ ĊĠ Ġabstract Ġfun ĠCompiler Context . codegen (): ĠCode gen Result Ċ } Ċ