Beispiel #1
0
 internal CustomAttributeData(ConstructorInfo ctorInfo, Assembly assembly, IntPtr data, uint data_length)
 {
     this.ctorInfo             = ctorInfo;
     this.lazyData             = new LazyCAttrData();
     this.lazyData.assembly    = assembly;
     this.lazyData.data        = data;
     this.lazyData.data_length = data_length;
 }
Beispiel #2
0
        void ResolveArguments()
        {
            object[] ctor_args, named_args;
            if (lazyData == null)
            {
                return;
            }

            ResolveArgumentsInternal(ctorInfo, lazyData.assembly, lazyData.data, lazyData.data_length, out ctor_args, out named_args);

            this.ctorArgs = Array.AsReadOnly <CustomAttributeTypedArgument>
                                (ctor_args != null ? UnboxValues <CustomAttributeTypedArgument> (ctor_args) : new CustomAttributeTypedArgument [0]);
            this.namedArgs = Array.AsReadOnly <CustomAttributeNamedArgument>
                                 (named_args != null ? UnboxValues <CustomAttributeNamedArgument> (named_args) : new CustomAttributeNamedArgument [0]);

            lazyData = null;
        }