ResolveRuntimeType() public method

public ResolveRuntimeType ( ) : Type
return System.Type
コード例 #1
0
 public static TypeDefinition ManagedReference(TypeDefinition elementType)
 {
     return
         (elementType.HasRuntimeTypeFully()
                         ? new TypeDefinition(elementType.ResolveRuntimeType().MakeByRefType(), elementType.ResolveRuntimeType().FullName, elementType, Flags.HasRuntimeType)
                         : new TypeDefinition(null, elementType.TypeName, elementType, Flags.Ref));
 }
コード例 #2
0
 public static TypeDefinition Array(TypeDefinition elementType)
 {
     return
         (elementType.HasRuntimeTypeFully()
                         ? new TypeDefinition(elementType.ResolveRuntimeType().MakeArrayType(), elementType.ResolveRuntimeType().FullName + "[]", elementType, Flags.HasRuntimeType)
                         : new TypeDefinition(null, elementType.TypeName, elementType, Flags.Array));
 }
コード例 #3
0
		internal static Type GetResolvedDelegateType( TypeDefinition returnType, TypeDefinition[] parameterTypes )
		{
			var typeDefinition = FindDelegateType( returnType, parameterTypes );
			return
				returnType.TryGetRuntimeType() == typeof( void )
					? parameterTypes.Length == 0
					? typeDefinition
					: typeDefinition.MakeGenericType( parameterTypes.Select( t => t.ResolveRuntimeType() ).ToArray() )
					: typeDefinition.MakeGenericType( parameterTypes.Select( t => t.ResolveRuntimeType() ).Concat( new[] { returnType.ResolveRuntimeType() } ).ToArray() );
		}
コード例 #4
0
        internal static Type GetResolvedDelegateType(TypeDefinition returnType, TypeDefinition[] parameterTypes)
        {
            var typeDefinition = FindDelegateType(returnType, parameterTypes);

            return
                (returnType.TryGetRuntimeType() == typeof(void)
                                        ? parameterTypes.Length == 0
                                        ? typeDefinition
                                        : typeDefinition.MakeGenericType(parameterTypes.Select(t => t.ResolveRuntimeType()).ToArray())
                                        : typeDefinition.MakeGenericType(parameterTypes.Select(t => t.ResolveRuntimeType()).Concat(new[] { returnType.ResolveRuntimeType() }).ToArray()));
        }
コード例 #5
0
ファイル: TypeDefinition.cs プロジェクト: msgpack/msgpack-cli
		public static TypeDefinition ManagedReference( TypeDefinition elementType )
		{
			return
				elementType.HasRuntimeTypeFully()
				? new TypeDefinition( elementType.ResolveRuntimeType().MakeByRefType(), elementType.ResolveRuntimeType().FullName, elementType, Flags.HasRuntimeType )
				: new TypeDefinition( null, elementType.TypeName, elementType, Flags.Ref );
		}
コード例 #6
0
ファイル: TypeDefinition.cs プロジェクト: msgpack/msgpack-cli
		public static TypeDefinition Array( TypeDefinition elementType )
		{
			return
				elementType.HasRuntimeTypeFully()
				? new TypeDefinition( elementType.ResolveRuntimeType().MakeArrayType(), elementType.ResolveRuntimeType().FullName + "[]", elementType, Flags.HasRuntimeType )
				: new TypeDefinition( null, elementType.TypeName, elementType, Flags.Array );
		}