Package soot.dotnet.instructions
Class CilIsInstInstruction
- java.lang.Object
-
- soot.dotnet.instructions.AbstractCilnstruction
-
- soot.dotnet.instructions.CilIsInstInstruction
-
- All Implemented Interfaces:
CilInstruction
public class CilIsInstInstruction extends AbstractCilnstruction
CIL isinst differs from instanceof: isinst returns object or null, while instanceof returns a boolean - rewrite
-
-
Field Summary
-
Fields inherited from class soot.dotnet.instructions.AbstractCilnstruction
cilBlock, dotnetBody, instruction
-
-
Constructor Summary
Constructors Constructor Description CilIsInstInstruction(ProtoIlInstructions.IlInstructionMsg instruction, DotnetBody dotnetBody, CilBlock cilBlock)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidjimplify(Body jb)Jimplify a starting statement of ILSpy ASTValuejimplifyExpr(Body jb)Jimplify an expression of ILSpy AST statement childrenLocalresolveRewritingIsInst(Body jb, Local variable, InstanceOfExpr instanceOfExpr)-
Methods inherited from class soot.dotnet.instructions.AbstractCilnstruction
createTempVar, createTempVar, simplifyComplexExpression
-
-
-
-
Constructor Detail
-
CilIsInstInstruction
public CilIsInstInstruction(ProtoIlInstructions.IlInstructionMsg instruction, DotnetBody dotnetBody, CilBlock cilBlock)
-
-
Method Detail
-
jimplify
public void jimplify(Body jb)
Description copied from interface:CilInstructionJimplify a starting statement of ILSpy AST
-
jimplifyExpr
public Value jimplifyExpr(Body jb)
Description copied from interface:CilInstructionJimplify an expression of ILSpy AST statement children- Returns:
-
resolveRewritingIsInst
public Local resolveRewritingIsInst(Body jb, Local variable, InstanceOfExpr instanceOfExpr)
-
-