System.Reflection.Emit.TypeBuilder.IsCreated C# (CSharp) Method

IsCreated() public method

public IsCreated ( ) : bool
return bool
        public bool IsCreated() { throw null; }
        public override System.Type MakeArrayType() { throw null; }

Usage Example

Esempio n. 1
0
        public static void SwapMethodBody(Type cls, int methodtoken, IntPtr rgIL, int methodSize, int flags)
        {
            if (methodSize <= 0 || methodSize >= 4128768)
            {
                throw new ArgumentException(Environment.GetResourceString("Argument_BadSizeForData"), "methodSize");
            }
            if (cls == null)
            {
                throw new ArgumentNullException("cls");
            }
            Module                module        = cls.Module;
            ModuleBuilder         moduleBuilder = module as ModuleBuilder;
            InternalModuleBuilder internalModuleBuilder;

            if (moduleBuilder != null)
            {
                internalModuleBuilder = moduleBuilder.InternalModule;
            }
            else
            {
                internalModuleBuilder = (module as InternalModuleBuilder);
            }
            if (internalModuleBuilder == null)
            {
                throw new NotSupportedException(Environment.GetResourceString("NotSupported_NotDynamicModule"));
            }
            RuntimeType runtimeType;

            if (cls is TypeBuilder)
            {
                TypeBuilder typeBuilder = (TypeBuilder)cls;
                if (!typeBuilder.IsCreated())
                {
                    throw new NotSupportedException(Environment.GetResourceString("NotSupported_NotAllTypesAreBaked", new object[]
                    {
                        typeBuilder.Name
                    }));
                }
                runtimeType = typeBuilder.BakedRuntimeType;
            }
            else
            {
                runtimeType = (cls as RuntimeType);
            }
            if (runtimeType == null)
            {
                throw new ArgumentException(Environment.GetResourceString("Argument_MustBeRuntimeType"), "cls");
            }
            StackCrawlMark  stackCrawlMark  = StackCrawlMark.LookForMyCaller;
            RuntimeAssembly runtimeAssembly = internalModuleBuilder.GetRuntimeAssembly();
            object          syncRoot        = runtimeAssembly.SyncRoot;

            lock (syncRoot)
            {
                MethodRental.SwapMethodBody(runtimeType.GetTypeHandleInternal(), methodtoken, rgIL, methodSize, flags, JitHelpers.GetStackCrawlMarkHandle(ref stackCrawlMark));
            }
        }
All Usage Examples Of System.Reflection.Emit.TypeBuilder::IsCreated