Exemple #1
0
        /// <summary>
        /// Dedicated implementation which does not fall back on the <seealso cref="#calculateBindingMap()"/> for performance reasons
        /// </summary>
        public virtual object Get(string key)
        {
            object result = null;

            if (wrappedBindings.ContainsKey(key))
            {
                result = wrappedBindings.Get(key);
            }
            else
            {
                if (key is string)
                {
                    ITypedValue resolvedValue = variableContext.Resolve((string)key);
                    result = Unpack(resolvedValue);
                }
            }

            return(result);
        }
Exemple #2
0
        protected internal virtual IVariableMap buildVariableMapFromVariableContext(IVariableContext variableContext)
        {
            var variableMap = Variables.CreateVariables();

            var variables = variableContext.KeySet();

            foreach (var variable in variables)
            {
                variableMap.PutValue(variable, variableContext.Resolve(variable));
            }

            return(variableMap);
        }