C# Class Prism.Injector.Patcher.DNHelperExtensions

Afficher le fichier Open project: TerrariaPrismTeam/Prism

Méthodes publiques

Méthode Description
CreateDelegate ( this context, string @namespace, string name, dnlib.DotNet.TypeSig returnType, MethodDef &invoke ) : TypeDef
EmitWrapperCall ( this proc, MethodDef toCall, dnlib.DotNet.Emit.Instruction before = null ) : void
EnumerateWithStackAnalysis ( this method, Instruction>.Action cb ) : void
FindInstrSeq ( this body, ILProcessor p, dnlib.DotNet.Emit.OpCode instrs ) : dnlib.DotNet.Emit.Instruction[]
FindInstrSeq ( this body, ILProcessor p, dnlib.DotNet.Emit.OpCode instrs, int amt ) : dnlib.DotNet.Emit.Instruction[]
FindInstrSeqStart ( this body, dnlib.DotNet.Emit.OpCode instrs, int startIndex ) : dnlib.DotNet.Emit.Instruction
RemoveInstructions ( this p, IEnumerable instrs ) : dnlib.DotNet.Emit.Instruction
RemoveInstructions ( this p, dnlib.DotNet.Emit.Instruction first, int count ) : dnlib.DotNet.Emit.Instruction
ReplaceInstructions ( this p, IEnumerable orig, IEnumerable repl ) : void

Private Methods

Méthode Description
CodeEqIgnoreS ( Code a, Code b ) : bool
GetLdargOf ( this @params, ushort index, bool isInstance = true ) : dnlib.DotNet.Emit.Instruction

Gets the ldarg instruction of the specified index using the smallest value type it can (because we're targeting the Sega Genesis and need to save memory).

ICast ( dnlib.DotNet.TypeSig a, dnlib.DotNet.TypeSig b, ICorLibTypes ts ) : dnlib.DotNet.TypeSig

Method Details

CreateDelegate() public static méthode

public static CreateDelegate ( this context, string @namespace, string name, dnlib.DotNet.TypeSig returnType, MethodDef &invoke ) : TypeDef
context this
@namespace string
name string
returnType dnlib.DotNet.TypeSig
invoke MethodDef
Résultat TypeDef

EmitWrapperCall() public static méthode

public static EmitWrapperCall ( this proc, MethodDef toCall, dnlib.DotNet.Emit.Instruction before = null ) : void
proc this
toCall MethodDef
before dnlib.DotNet.Emit.Instruction
Résultat void

EnumerateWithStackAnalysis() public static méthode

public static EnumerateWithStackAnalysis ( this method, Instruction>.Action cb ) : void
method this
cb Instruction>.Action
Résultat void

FindInstrSeq() public static méthode

public static FindInstrSeq ( this body, ILProcessor p, dnlib.DotNet.Emit.OpCode instrs ) : dnlib.DotNet.Emit.Instruction[]
body this
p ILProcessor
instrs dnlib.DotNet.Emit.OpCode
Résultat dnlib.DotNet.Emit.Instruction[]

FindInstrSeq() public static méthode

public static FindInstrSeq ( this body, ILProcessor p, dnlib.DotNet.Emit.OpCode instrs, int amt ) : dnlib.DotNet.Emit.Instruction[]
body this
p ILProcessor
instrs dnlib.DotNet.Emit.OpCode
amt int
Résultat dnlib.DotNet.Emit.Instruction[]

FindInstrSeqStart() public static méthode

public static FindInstrSeqStart ( this body, dnlib.DotNet.Emit.OpCode instrs, int startIndex ) : dnlib.DotNet.Emit.Instruction
body this
instrs dnlib.DotNet.Emit.OpCode
startIndex int
Résultat dnlib.DotNet.Emit.Instruction

RemoveInstructions() public static méthode

public static RemoveInstructions ( this p, IEnumerable instrs ) : dnlib.DotNet.Emit.Instruction
p this
instrs IEnumerable
Résultat dnlib.DotNet.Emit.Instruction

RemoveInstructions() public static méthode

public static RemoveInstructions ( this p, dnlib.DotNet.Emit.Instruction first, int count ) : dnlib.DotNet.Emit.Instruction
p this
first dnlib.DotNet.Emit.Instruction
count int
Résultat dnlib.DotNet.Emit.Instruction

ReplaceInstructions() public static méthode

public static ReplaceInstructions ( this p, IEnumerable orig, IEnumerable repl ) : void
p this
orig IEnumerable
repl IEnumerable
Résultat void