internal RuntimeEventInfo(int tkEvent, RuntimeType declaredType, RuntimeTypeCache reflectedTypeCache, out bool isPrivate)
{
ASSERT.PRECONDITION(declaredType != null);
ASSERT.PRECONDITION(reflectedTypeCache != null);
ASSERT.PRECONDITION(!reflectedTypeCache.IsGlobal);
MetadataImport scope = declaredType.Module.MetadataImport;
m_token = tkEvent;
m_reflectedTypeCache = reflectedTypeCache;
m_declaringType = declaredType;
RuntimeTypeHandle declaredTypeHandle = declaredType.GetTypeHandleInternal();
RuntimeTypeHandle reflectedTypeHandle = reflectedTypeCache.RuntimeTypeHandle;
RuntimeMethodInfo dummy;
scope.GetEventProps(tkEvent, out m_utf8name, out m_flags);
int cAssociateRecord = scope.GetAssociatesCount(tkEvent);
AssociateRecord* associateRecord = stackalloc AssociateRecord[cAssociateRecord];
scope.GetAssociates(tkEvent, associateRecord, cAssociateRecord);
Associates.AssignAssociates(associateRecord, cAssociateRecord, declaredTypeHandle, reflectedTypeHandle,
out m_addMethod, out m_removeMethod, out m_raiseMethod,
out dummy, out dummy, out m_otherMethod, out isPrivate, out m_bindingFlags);
}
#endregion