메소드 | 설명 | |
---|---|---|
GetEnumUnderlyingType ( TypeReference enumType ) : TypeReference |
Gets the underlying type, if the specified type is an enum. Otherwise, returns null.
|
|
GetFieldType ( FieldReference fieldReference ) : TypeReference | ||
GetInformationAmount ( TypeReference type ) : int | ||
GetTypeCode ( TypeReference type ) : TypeCode | ||
IsBoolean ( TypeReference type ) : bool | ||
IsEnum ( TypeReference type ) : bool | ||
IsIntegerOrEnum ( TypeReference type ) : bool | ||
IsSameType ( TypeReference type1, TypeReference type2 ) : bool | ||
Reset ( ILBlock method ) : void |
Clears the type inference data on the method.
|
|
Run ( DecompilerContext context, ILBlock method ) : void | ||
SubstituteTypeArgs ( TypeReference type, MemberReference member ) : TypeReference |
메소드 | 설명 | |
---|---|---|
CreateDependencyGraph ( ILNode node ) : void |
Creates the "ExpressionToInfer" instances (=nodes in dependency graph) We are using a dependency graph to ensure that expressions are analyzed in the correct order. |
|
CreateNullableType ( TypeReference type ) : GenericInstanceType | ||
DoInferTypeForExpression ( ILExpression expr, TypeReference expectedType, bool forceInferChildren = false ) : TypeReference | ||
FindNestedAssignments ( ILExpression expr, ExpressionToInfer parent ) : void | ||
GetNullableTypeArgument ( TypeReference type ) : TypeReference | ||
HandleConversion ( int targetBitSize, bool targetSigned, ILExpression arg, TypeReference expectedType, TypeReference targetType ) : TypeReference | ||
IdentifySingleLoadVariables ( ) : void | ||
InferArgumentsInAddition ( ILExpression expr, bool isSigned, TypeReference expectedType ) : TypeReference | ||
InferArgumentsInBinaryOperator ( ILExpression expr, bool isSigned, TypeReference expectedType ) : TypeReference | ||
InferArgumentsInSubtraction ( ILExpression expr, bool isSigned, TypeReference expectedType ) : TypeReference | ||
InferBinaryArguments ( ILExpression left, ILExpression right, TypeReference expectedType, bool forceInferChildren = false, TypeReference leftPreferred = null, TypeReference rightPreferred = null ) : TypeReference | ||
InferTypeForExpression ( ILExpression expr, TypeReference expectedType, bool forceInferChildren = false ) : TypeReference |
Infers the C# type of expr.
|
|
IsArrayPointerOrReference ( TypeReference type ) : bool | ||
IsNullableType ( TypeReference type ) : bool | ||
IsSigned ( TypeReference type ) : bool? | ||
MakeRefIfValueType ( TypeReference type, ILExpressionPrefix constrainedPrefix ) : TypeReference |
Wraps 'type' in a ByReferenceType if it is a value type. If a constrained prefix is specified, returns the constrained type wrapped in a ByReferenceType.
|
|
NumericPromotion ( TypeReference type ) : TypeReference |
Promotes primitive types smaller than int32 to int32. Always promotes to signed int32. |
|
OperandFitsInType ( TypeReference type, int num ) : bool | ||
RunInference ( ) : void | ||
RunInference ( ILExpression expr ) : void | ||
TypeWithMoreInformation ( TypeReference leftPreferred, TypeReference rightPreferred ) : TypeReference | ||
UnpackModifiers ( TypeReference type ) : TypeReference | ||
UnpackPointer ( TypeReference pointerOrManagedReference ) : TypeReference |
public static GetEnumUnderlyingType ( TypeReference enumType ) : TypeReference | ||
enumType | TypeReference | |
리턴 | TypeReference |
public static GetFieldType ( FieldReference fieldReference ) : TypeReference | ||
fieldReference | FieldReference | |
리턴 | TypeReference |
public static GetInformationAmount ( TypeReference type ) : int | ||
type | TypeReference | |
리턴 | int |
public static GetTypeCode ( TypeReference type ) : TypeCode | ||
type | TypeReference | |
리턴 | TypeCode |
public static IsBoolean ( TypeReference type ) : bool | ||
type | TypeReference | |
리턴 | bool |
public static IsIntegerOrEnum ( TypeReference type ) : bool | ||
type | TypeReference | |
리턴 | bool |
public static IsSameType ( TypeReference type1, TypeReference type2 ) : bool | ||
type1 | TypeReference | |
type2 | TypeReference | |
리턴 | bool |
public static Run ( DecompilerContext context, ILBlock method ) : void | ||
context | DecompilerContext | |
method | ILBlock | |
리턴 | void |
public static SubstituteTypeArgs ( TypeReference type, MemberReference member ) : TypeReference | ||
type | TypeReference | |
member | MemberReference | |
리턴 | TypeReference |