Exemple #1
0
        internal override void SetStateAttributeTo <TSender, TReceiver, TBundler>(StateBuildInfo stateBuildInfo, IEnumerable <TypeBuilder> allStateBldrs)
        {
            var eventType = GetEventType <TSender, TBundler>(Event);
            var ctor      = typeof(OnEventDoAction).GetConstructor(new[] { typeof(Type), typeof(string) });

            stateBuildInfo.CurrentStateBuilder.SetCustomAttribute(new CustomAttributeBuilder(ctor, new object[] { eventType, Action }));
        }
        internal override void SetStateAttributeTo <TSender, TReceiver, TBundler>(StateBuildInfo stateBuildInfo, IEnumerable <TypeBuilder> allStateBldrs)
        {
            var eventTypes = Events.Select(GetEventType <TSender, TBundler>).ToArray();
            var ctor       = typeof(IgnoreEvents).GetConstructor(new[] { typeof(Type[]) });

            stateBuildInfo.CurrentStateBuilder.SetCustomAttribute(new CustomAttributeBuilder(ctor, new object[] { eventTypes }));
        }
        internal override void SetStateAttributeTo <TSender, TReceiver, TBundler>(StateBuildInfo stateBuildInfo, IEnumerable <TypeBuilder> allStateBldrs)
        {
            var name       = stateBuildInfo.CurrentStateBuilder.Name + Guid.NewGuid().ToString("N");
            var typeAttr   = stateBuildInfo.CurrentStateBuilder.Attributes;
            var parentType = stateBuildInfo.CurrentStateBuilder.BaseType;
            var stateBldr  = stateBuildInfo.TransitionTypeBuilder.DefineNestedType(name, typeAttr, parentType);

            {
                var ctor = typeof(Start).GetConstructor(Type.EmptyTypes);
                stateBldr.SetCustomAttribute(new CustomAttributeBuilder(ctor, new object[0]));
            }
            {
                var ctor = typeof(OnEventDoAction).GetConstructor(new[] { typeof(Type), typeof(string) });
                stateBldr.SetCustomAttribute(new CustomAttributeBuilder(ctor, new object[] { typeof(Construct), "HandleConstruct" }));
            }
            stateBuildInfo.AutoDefinedStartStateBuilder = stateBldr;
        }
Exemple #4
0
        internal override void SetStateAttributeTo <TSender, TReceiver, TBundler>(StateBuildInfo stateBuildInfo, IEnumerable <TypeBuilder> allStateBldrs)
        {
            var ctor = typeof(Hot).GetConstructor(Type.EmptyTypes);

            stateBuildInfo.CurrentStateBuilder.SetCustomAttribute(new CustomAttributeBuilder(ctor, new object[0]));
        }