h2jvm
Safe HaskellNone
LanguageGHC2021

JVM.Data.Abstract.Instruction

Description

High level representation of a JVM instruction, with type-safe arguments and no stack manipulation needed. This is not a 1-1 mapping to the actual instructions, use Instruction for that. Instead, this includes some conveniences like the Label instruction to avoid manually dealing with jump offsets.

Documentation

data Instruction' label Source #

Instances

Instances details
Functor Instruction' Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

fmap :: (a -> b) -> Instruction' a -> Instruction' b #

(<$) :: a -> Instruction' b -> Instruction' a #

Data label => Data (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Instruction' label -> c (Instruction' label) #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Instruction' label) #

toConstr :: Instruction' label -> Constr #

dataTypeOf :: Instruction' label -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Instruction' label)) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Instruction' label)) #

gmapT :: (forall b. Data b => b -> b) -> Instruction' label -> Instruction' label #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Instruction' label -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Instruction' label -> r #

gmapQ :: (forall d. Data d => d -> u) -> Instruction' label -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Instruction' label -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Instruction' label -> m (Instruction' label) #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Instruction' label -> m (Instruction' label) #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Instruction' label -> m (Instruction' label) #

Generic (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Associated Types

type Rep (Instruction' label) 
Instance details

Defined in JVM.Data.Abstract.Instruction

type Rep (Instruction' label) = D1 ('MetaData "Instruction'" "JVM.Data.Abstract.Instruction" "h2jvm-0.6.3.8-Ja8rkHiAzXe1IMrHjS0ZE2" 'False) (((((C1 ('MetaCons "ALoad" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)) :+: C1 ('MetaCons "AStore" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2))) :+: (C1 ('MetaCons "AReturn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AConstNull" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Dup" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IAnd" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "IfEq" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfNe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label))))) :+: (((C1 ('MetaCons "IfLt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfGe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label))) :+: (C1 ('MetaCons "IfGt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfLe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)))) :+: ((C1 ('MetaCons "Instanceof" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType)) :+: C1 ('MetaCons "InvokeStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor)))) :+: (C1 ('MetaCons "InvokeInterface" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: (C1 ('MetaCons "InvokeVirtual" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: C1 ('MetaCons "InvokeDynamic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BootstrapMethod) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor)))))))) :+: ((((C1 ('MetaCons "InvokeSpecial" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: C1 ('MetaCons "IOr" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ILoad" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)) :+: C1 ('MetaCons "IStore" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)))) :+: ((C1 ('MetaCons "Label" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "LDC" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LDCEntry))) :+: (C1 ('MetaCons "PutStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType))) :+: C1 ('MetaCons "GetField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType)))))) :+: (((C1 ('MetaCons "GetStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType))) :+: C1 ('MetaCons "PutField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType)))) :+: (C1 ('MetaCons "Goto" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "CheckCast" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType)))) :+: ((C1 ('MetaCons "Return" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IReturn" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "IConst0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IConst1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "New" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType))))))))

Methods

from :: Instruction' label -> Rep (Instruction' label) x #

to :: Rep (Instruction' label) x -> Instruction' label #

Show label => Show (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

showsPrec :: Int -> Instruction' label -> ShowS #

show :: Instruction' label -> String #

showList :: [Instruction' label] -> ShowS #

Eq label => Eq (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

(==) :: Instruction' label -> Instruction' label -> Bool #

(/=) :: Instruction' label -> Instruction' label -> Bool #

Ord label => Ord (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

compare :: Instruction' label -> Instruction' label -> Ordering #

(<) :: Instruction' label -> Instruction' label -> Bool #

(<=) :: Instruction' label -> Instruction' label -> Bool #

(>) :: Instruction' label -> Instruction' label -> Bool #

(>=) :: Instruction' label -> Instruction' label -> Bool #

max :: Instruction' label -> Instruction' label -> Instruction' label #

min :: Instruction' label -> Instruction' label -> Instruction' label #

Pretty label => Pretty (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

pretty :: Instruction' label -> Doc ann Source #

prettyList :: [Instruction' label] -> Doc ann Source #

type Rep (Instruction' label) Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

type Rep (Instruction' label) = D1 ('MetaData "Instruction'" "JVM.Data.Abstract.Instruction" "h2jvm-0.6.3.8-Ja8rkHiAzXe1IMrHjS0ZE2" 'False) (((((C1 ('MetaCons "ALoad" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)) :+: C1 ('MetaCons "AStore" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2))) :+: (C1 ('MetaCons "AReturn" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "AConstNull" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Dup" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IAnd" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "IfEq" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfNe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label))))) :+: (((C1 ('MetaCons "IfLt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfGe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label))) :+: (C1 ('MetaCons "IfGt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "IfLe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)))) :+: ((C1 ('MetaCons "Instanceof" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType)) :+: C1 ('MetaCons "InvokeStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor)))) :+: (C1 ('MetaCons "InvokeInterface" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: (C1 ('MetaCons "InvokeVirtual" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: C1 ('MetaCons "InvokeDynamic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 BootstrapMethod) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor)))))))) :+: ((((C1 ('MetaCons "InvokeSpecial" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 MethodDescriptor))) :+: C1 ('MetaCons "IOr" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ILoad" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)) :+: C1 ('MetaCons "IStore" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 U2)))) :+: ((C1 ('MetaCons "Label" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "LDC" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 LDCEntry))) :+: (C1 ('MetaCons "PutStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType))) :+: C1 ('MetaCons "GetField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType)))))) :+: (((C1 ('MetaCons "GetStatic" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType))) :+: C1 ('MetaCons "PutField" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FieldType)))) :+: (C1 ('MetaCons "Goto" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 label)) :+: C1 ('MetaCons "CheckCast" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType)))) :+: ((C1 ('MetaCons "Return" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "IReturn" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "IConst0" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "IConst1" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "New" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType))))))))

data LDCEntry Source #

Instances

Instances details
Data LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LDCEntry -> c LDCEntry #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LDCEntry #

toConstr :: LDCEntry -> Constr #

dataTypeOf :: LDCEntry -> DataType #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LDCEntry) #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LDCEntry) #

gmapT :: (forall b. Data b => b -> b) -> LDCEntry -> LDCEntry #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LDCEntry -> r #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LDCEntry -> r #

gmapQ :: (forall d. Data d => d -> u) -> LDCEntry -> [u] #

gmapQi :: Int -> (forall d. Data d => d -> u) -> LDCEntry -> u #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> LDCEntry -> m LDCEntry #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LDCEntry -> m LDCEntry #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LDCEntry -> m LDCEntry #

Generic LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Associated Types

type Rep LDCEntry 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

from :: LDCEntry -> Rep LDCEntry x #

to :: Rep LDCEntry x -> LDCEntry #

Show LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Eq LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Ord LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Pretty LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction

Methods

pretty :: LDCEntry -> Doc ann Source #

prettyList :: [LDCEntry] -> Doc ann Source #

type Rep LDCEntry Source # 
Instance details

Defined in JVM.Data.Abstract.Instruction