public bool ParametersMatchArguments(object[] args) { int i = 0; foreach (ParameterDef param in Parameters) { if (i >= RequiredArgsCount) { return(true); } if (param.HasEqlSpecializer) { bool result = Runtime.Eql(args[i], param.EqlSpecializer); if (!result) { return(false); } } else if (param.HasTypeSpecializer) { bool result = Runtime.ToBool(Runtime.IsInstanceOf(args[i], param.TypeSpecializer)); if (!result) { return(false); } } ++i; } return(true); }