h2jvm
Safe HaskellNone
LanguageGHC2021

JVM.Data.Convert.ConstantPool

Synopsis

Documentation

data ConstantPoolState Source #

Instances

Instances details
Monoid ConstantPoolState Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

Semigroup ConstantPoolState Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

Show ConstantPoolState Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

Eq ConstantPoolState Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

Ord ConstantPoolState Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

data ConstantPool (m :: k) a where Source #

Effect for managing the constant pool state

Constructors

GetCP :: forall {k} (m :: k). ConstantPool m ConstantPoolState 
SetCP :: forall {k} (m :: k). ConstantPoolState -> ConstantPool m () 

Instances

Instances details
type DispatchOf (ConstantPool :: (Type -> Type) -> Type -> Type) Source # 
Instance details

Defined in JVM.Data.Convert.ConstantPool

type DispatchOf (ConstantPool :: (Type -> Type) -> Type -> Type) = 'Dynamic

getCP :: forall {k} (es :: [Effect]). (HasCallStack, (ConstantPool :: (Type -> Type) -> Type -> Type) :> es) => Eff es ConstantPoolState Source #

Perform the operation GetCP.

setCP :: forall {k} (es :: [Effect]). (HasCallStack, (ConstantPool :: (Type -> Type) -> Type -> Type) :> es) => ConstantPoolState -> Eff es () Source #

Perform the operation SetCP.

lookupOrInsertMOver :: forall (r :: [Effect]) a. ((ConstantPool :: (Type -> Type) -> Type -> Type) :> r, Ord a) => a -> (ConstantPoolState -> IndexedMap a) -> (ConstantPoolState -> IndexedMap a -> ConstantPoolState) -> Eff r Int Source #

lookupOrInsertMCP :: forall (r :: [Effect]). (ConstantPool :: (Type -> Type) -> Type -> Type) :> r => ConstantPoolInfo -> Eff r Int Source #

lookupOrInsertMBM :: forall (r :: [Effect]). (ConstantPool :: (Type -> Type) -> Type -> Type) :> r => BootstrapMethod -> Eff r Int Source #

transformEntry :: forall (r :: [Effect]). (ConstantPool :: (Type -> Type) -> Type -> Type) :> r => ConstantPoolEntry -> Eff r Int Source #

convertBootstrapMethod :: forall (r :: [Effect]). (ConstantPool :: (Type -> Type) -> Type -> Type) :> r => BootstrapMethod -> Eff r Int Source #

findIndexOf :: forall (r :: [Effect]). (ConstantPool :: (Type -> Type) -> Type -> Type) :> r => ConstantPoolEntry -> Eff r U2 Source #

constantPoolToState :: forall (r :: [Effect]) a. State ConstantPoolState :> r => Eff ((ConstantPool :: (Type -> Type) -> Type -> Type) ': r) a -> Eff r a Source #

runConstantPoolWith :: forall (r :: [(Type -> Type) -> Type -> Type]) a. ConstantPoolState -> Eff ((ConstantPool :: (Type -> Type) -> Type -> Type) ': r) a -> Eff r (a, ConstantPoolState) Source #

runConstantPool :: forall (r :: [(Type -> Type) -> Type -> Type]) a. Eff ((ConstantPool :: (Type -> Type) -> Type -> Type) ': r) a -> Eff r (a, ConstantPoolState) Source #