public void Provide(Type type, ComponentData data)
        {
            var memberData = type.GetPublicMemberInfos()
                             .Select(
                info => new MemberData(
                    info.type.ToCompilableString(),
                    info.name))
                             .ToArray();

            data.SetMemberData(memberData);
        }
Beispiel #2
0
 private ComponentData[] CreateDataForEvents(ComponentData data)
 {
     return(data.GetContextNames()
            .SelectMany(
                contextName =>
                data.GetEventData()
                .Select(
                    eventData =>
     {
         var dataForEvent = new ComponentData(data);
         dataForEvent.IsEvent(false);
         dataForEvent.IsUnique(false);
         dataForEvent.ShouldGenerateComponent(false);
         var eventComponentName = data.EventComponentName(eventData);
         var eventTypeSuffix = eventData.GetEventTypeSuffix();
         var optionalContextName =
             dataForEvent.GetContextNames().Length > 1 ? contextName : string.Empty;
         var listenerComponentName =
             optionalContextName + eventComponentName + eventTypeSuffix.AddListenerSuffix();
         dataForEvent.SetTypeName(listenerComponentName.AddComponentSuffix());
         dataForEvent.SetMemberData(
             new[]
         {
             new MemberData(
                 "System.Collections.Generic.List<I" + listenerComponentName + ">",
                 "value")
         });
         dataForEvent.SetContextNames(
             new[]
         {
             contextName
         });
         return dataForEvent;
     })
                .ToArray())
            .ToArray());
 }