public void Define(CodeGen code_gen)
        {
            if (is_defined)
            {
                return;
            }

            typeref.Resolve(code_gen);

            peapi_param = new PEAPI.Param(attr,
                                          name, typeref.PeapiType);
            if (defval != null)
            {
                peapi_param.AddDefaultValue(defval);
            }

            if (customattr_list != null)
            {
                foreach (CustomAttr customattr in customattr_list)
                {
                    customattr.AddTo(code_gen, peapi_param);
                }
            }

            if (native_type != null)
            {
                peapi_param.AddMarshallInfo(native_type);
            }

            is_defined = true;
        }
예제 #2
0
파일: ParamDef.cs 프로젝트: nobled/mono
                public void Define (CodeGen code_gen)
                {
                        if (is_defined)
                                return;

                        typeref.Resolve (code_gen);

                        peapi_param = new PEAPI.Param (attr,
                                        name, typeref.PeapiType);
                        if (defval != null) {
                                peapi_param.AddDefaultValue (defval);
                        }

                        if (customattr_list != null)
                                foreach (CustomAttr customattr in customattr_list)
                                        customattr.AddTo (code_gen, peapi_param);

                        if (native_type != null)
                                peapi_param.AddMarshallInfo (native_type);

                        is_defined = true;
                }