private void IsolateParameters(MethodInfo methodInfo)
{
Parameters = methodInfo.GetParameters()
.Select(p => {
var proceedFunctionType = StaticAnalysis.ExtractProceedFunctionType(p.ParameterType);
if (proceedFunctionType != null)
{
TransformsScopeTo = proceedFunctionType;
return(new ProceedParameter()
{
Name = p.Name,
Type = p.ParameterType,
TransformsTo = proceedFunctionType
});
}
else
{
return(new StatementParameter()
{
Name = p.Name, Type = p.ParameterType
});
}
})
.ToList();
}