Exemplo n.º 1
0
        /// <summary>
        /// Register all remaining events and states that have not been explicitly declared.
        /// </summary>
        void RegisterImplicit()
        {
            var machineType = GetType().GetTypeInfo();

            IEnumerable <PropertyInfo> properties = ConfigurationHelpers.GetStateMachineProperties(machineType);

            foreach (var propertyInfo in properties)
            {
                var propertyType = propertyInfo.PropertyType.GetTypeInfo();
                if (!propertyType.IsGenericType)
                {
                    continue;
                }

                if (!propertyType.ClosesType(typeof(Event <>), out Type[] arguments))