Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ LogEventArgsMismatches()

void System.Diagnostics.Tracing.EventSource.LogEventArgsMismatches ( int eventId,
object[] args )
inlineprivateinherited

Definition at line 1479 of file EventSource.cs.

1480 {
1481 ParameterInfo[] parameters = m_eventData[eventId].Parameters;
1482 if (args.Length != parameters.Length)
1483 {
1484 ReportOutOfBandMessage(SR.Format(SR.EventSource_EventParametersMismatch, eventId, args.Length, parameters.Length));
1485 return;
1486 }
1487 for (int i = 0; i < args.Length; i++)
1488 {
1489 Type parameterType = parameters[i].ParameterType;
1490 object obj = args[i];
1491 if ((obj != null && !parameterType.IsAssignableFrom(obj.GetType())) || (obj == null && parameterType.IsValueType && (!parameterType.IsGenericType || !(parameterType.GetGenericTypeDefinition() == typeof(Nullable<>)))))
1492 {
1493 ReportOutOfBandMessage(SR.Format(SR.EventSource_VarArgsParameterMismatch, eventId, parameters[i].Name));
1494 break;
1495 }
1496 }
1497 }
volatile EventMetadata[] m_eventData

References System.SR.EventSource_EventParametersMismatch, System.SR.EventSource_VarArgsParameterMismatch, System.SR.Format(), System.Diagnostics.Tracing.EventSource.m_eventData, System.Reflection.ParameterInfo.Name, System.obj, System.Reflection.ParameterInfo.ParameterType, and System.Diagnostics.Tracing.EventSource.ReportOutOfBandMessage().

Referenced by System.Diagnostics.Tracing.EventSource.WriteEventVarargs().