Пример #1
0
        public TRegister SafeResolve <TRegister>()
        {
            try
            {
                TRegister instance = _container.GetInstance <TRegister>();
                return(instance);
            }
            catch (Exception)
            {
                // ignored
            }

            return(default(TRegister));
        }
Пример #2
0
        public static TRegister Resolve <TRegister>() where TRegister : class
        {
            TRegister instance    = null;
            var       serviceType = typeof(TRegister);

            if (ServiceMap.ContainsKey(serviceType))
            {
                instance = (TRegister)ServiceMap[serviceType];
            }
            else
            {
                Debug.LogError($"[ServiceLocator] Service {serviceType.Name} was not being register.");
            }

            return(instance);
        }
        private TRegister CreateRegister <TRegister>() where TRegister : PeripheralRegister
        {
            TRegister result = null;

            if (typeof(TRegister) == typeof(DoubleWordRegister))
            {
                result = (TRegister)(PeripheralRegister) new DoubleWordRegister(master);
            }
            else if (typeof(TRegister) == typeof(WordRegister))
            {
                result = (TRegister)(PeripheralRegister) new WordRegister(master);
            }
            else if (typeof(TRegister) == typeof(ByteRegister))
            {
                result = (TRegister)(PeripheralRegister) new ByteRegister(master);
            }
            return(result);
        }
Пример #4
0
 /// <summary>
 /// Initializes a new partial pattern match.
 /// </summary>
 /// <param name="state"></param>
 /// <param name="register"></param>
 /// <param name="patternStartTime"></param>
 internal Run(int state, TRegister register, DateTimeOffset patternStartTime)
 {
     this._register         = register;
     this._state            = state;
     this._patternStartTime = patternStartTime;
 }
Пример #5
0
 internal Run(int state, TRegister register)
 {
     this._register = register;
     this._state    = state;
 }