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;
}
}