Class CompoundAssignmentInstruction
- Namespace
- ICSharpCode.Decompiler.IL
- Assembly
- ICSharpCode.Decompiler.dll
Common instruction for compound assignments.
public abstract class CompoundAssignmentInstruction : ILInstruction
- Inheritance
-
CompoundAssignmentInstruction
- Derived
- Inherited Members
Constructors
CompoundAssignmentInstruction(OpCode, CompoundEvalMode, ILInstruction, CompoundTargetKind, ILInstruction)
public CompoundAssignmentInstruction(OpCode opCode, CompoundEvalMode evalMode, ILInstruction target, CompoundTargetKind targetKind, ILInstruction value)
Parameters
opCode
OpCodeevalMode
CompoundEvalModetarget
ILInstructiontargetKind
CompoundTargetKindvalue
ILInstruction
Fields
EvalMode
public readonly CompoundEvalMode EvalMode
Field Value
TargetKind
If TargetIsProperty is true, the Target must be a call to a property getter, and the compound.assign will implicitly call the corresponding property setter. Otherwise, the Target can be any instruction that evaluates to an address, and the compound.assign will implicit load and store from/to that address.
public readonly CompoundTargetKind TargetKind
Field Value
TargetSlot
public static readonly SlotInfo TargetSlot
Field Value
ValueSlot
public static readonly SlotInfo ValueSlot
Field Value
Properties
DirectFlags
Gets the flags for this instruction only, without considering the child instructions.
public override InstructionFlags DirectFlags { get; }
Property Value
Target
public ILInstruction Target { get; set; }
Property Value
Value
public ILInstruction Value { get; set; }
Property Value
Methods
Clone()
public override sealed ILInstruction Clone()
Returns
ComputeFlags()
protected override InstructionFlags ComputeFlags()
Returns
GetChild(int)
protected override sealed ILInstruction GetChild(int index)
Parameters
index
int
Returns
GetChildCount()
protected override sealed int GetChildCount()
Returns
GetChildSlot(int)
protected override sealed SlotInfo GetChildSlot(int index)
Parameters
index
int
Returns
SetChild(int, ILInstruction)
protected override sealed void SetChild(int index, ILInstruction value)
Parameters
index
intvalue
ILInstruction
WriteSuffix(ITextOutput)
protected void WriteSuffix(ITextOutput output)
Parameters
output
ITextOutput
WriteTo(ITextOutput, ILAstWritingOptions)
Writes the ILAst to the text output.
public override void WriteTo(ITextOutput output, ILAstWritingOptions options)
Parameters
output
ITextOutputoptions
ILAstWritingOptions