Enum ComparisonLiftingKind
- Namespace
- ICSharpCode.Decompiler.IL
- Assembly
- ICSharpCode.Decompiler.dll
public enum ComparisonLiftingKind
Fields
CSharp = 1
C#-style lifted comparison:
- operands that have a ResultType != this.InputType are expected to return a value of type Nullable{T}, where T.GetStackType() == this.InputType.
- if both operands are
null
, equality comparisons evaluate to 1, all other comparisons to 0. - if one operand is
null
, inequality comparisons evaluate to 1, all other comparisons to 0. - if neither operand is
null
, the underlying comparison is performed.
Note that even though C#-style lifted comparisons set IsLifted=true, the ResultType remains I4 as with normal comparisons.
None = 0
Not a lifted comparison.
ThreeValuedLogic = 2
SQL-style lifted comparison: works like a lifted binary numeric instruction, that is, if any input operand is
null
, the comparison evaluates tonull
.