Ejemplo n.º 1
0
 public static IExpression GetValue(string name)
 {
     var rpnGuid = new Guid(_rpnStoGuid);
     var nameLookups = rpnGuid.Load<Dictionary<string, Guid>>();
     if (nameLookups == null) return null;
     return !nameLookups.ContainsKey(name) ? null : nameLookups[name].Load<IExpression>();
 }
Ejemplo n.º 2
0
        public IExpression Eval(IEnumerable<IExpression> args)
        {
            var name = args.First().ToString();

            var guid = Guid.NewGuid();
            var rpnGuid = new Guid(_rpnStoGuid);
            _nameLookups = rpnGuid.Load<Dictionary<string, Guid>>() ?? new Dictionary<string, Guid>();
            if (!_nameLookups.ContainsKey(name))
            {
                _nameLookups[args.First().ToString()] = guid;
                _nameLookups.Persist(rpnGuid);
            }
            else
                guid = _nameLookups[name];

            args.Last().Persist(guid);
            return null;
        }