| Safe Haskell | None |
|---|---|
| Language | GHC2021 |
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
type Instruction = Instruction' Label Source #
data Instruction' label Source #
Constructors
Instances
jumpTarget :: Instruction' label -> Maybe label Source #
Instances
| Data LDCEntry Source # | |||||
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 # | |||||
Defined in JVM.Data.Abstract.Instruction Associated Types
| |||||
| Show LDCEntry Source # | |||||
| Eq LDCEntry Source # | |||||
| Ord LDCEntry Source # | |||||
Defined in JVM.Data.Abstract.Instruction | |||||
| Pretty LDCEntry Source # | |||||
| type Rep LDCEntry Source # | |||||
Defined in JVM.Data.Abstract.Instruction type Rep LDCEntry = D1 ('MetaData "LDCEntry" "JVM.Data.Abstract.Instruction" "h2jvm-0.6.3.8-Ja8rkHiAzXe1IMrHjS0ZE2" 'False) ((C1 ('MetaCons "LDCInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :+: C1 ('MetaCons "LDCFloat" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Float))) :+: (C1 ('MetaCons "LDCString" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :+: C1 ('MetaCons "LDCClass" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ClassInfoType)))) | |||||