Example #1
0
        internal override void WriteSig(ModuleBuilder module, ByteBuffer bb)
        {
            byte flags = PROPERTY;

            if ((callingConvention & CallingConventions.HasThis) != 0)
            {
                flags |= HASTHIS;
            }
            if ((callingConvention & CallingConventions.ExplicitThis) != 0)
            {
                flags |= EXPLICITTHIS;
            }
            if ((callingConvention & CallingConventions.VarArgs) != 0)
            {
                flags |= VARARG;
            }
            bb.Write(flags);
            bb.WriteCompressedInt(parameterTypes == null ? 0 : parameterTypes.Length);
            WriteCustomModifiers(module, bb, customModifiers.GetReturnTypeCustomModifiers());
            WriteType(module, bb, propertyType);
            if (parameterTypes != null)
            {
                for (int i = 0; i < parameterTypes.Length; i++)
                {
                    WriteCustomModifiers(module, bb, customModifiers.GetParameterCustomModifiers(i));
                    WriteType(module, bb, parameterTypes[i]);
                }
            }
        }
Example #2
0
 public CustomModifiers GetParameterCustomModifiers(int index)
 {
     return(customModifiers.GetParameterCustomModifiers(index));
 }
Example #3
0
 internal CustomModifiers GetParameterCustomModifiers(IGenericBinder binder, int index)
 {
     return(modifiers.GetParameterCustomModifiers(index).Bind(binder));
 }