Mosa.Compiler.MosaTypeSystem.TypeSystem.CreateLinkerMethod C# (CSharp) Метод

CreateLinkerMethod() публичный Метод

public CreateLinkerMethod ( string methodName, MosaType returnType, IList parameters ) : MosaMethod
methodName string
returnType MosaType
parameters IList
Результат MosaMethod
        public MosaMethod CreateLinkerMethod(string methodName, MosaType returnType, IList<MosaParameter> parameters)
        {
            if (parameters == null)
                parameters = new List<MosaParameter>();

            MosaMethod result = Controller.CreateMethod();
            using (var mosaType = Controller.MutateType(DefaultLinkerType))
                mosaType.Methods.Add(result);
            using (var mosaMethod = Controller.MutateMethod(result))
            {
                mosaMethod.Module = LinkerModule;
                mosaMethod.DeclaringType = DefaultLinkerType;
                mosaMethod.Name = methodName;
                mosaMethod.Signature = new MosaMethodSignature(returnType, parameters);

                mosaMethod.IsStatic = true;
                mosaMethod.HasThis = false;
                mosaMethod.HasExplicitThis = false;
                mosaMethod.IsLinkerGenerated = true;

                return result;
            }
        }