Exemple #1
0
        // index here

        /// <summary>
        /// Evaluate
        /// </summary>
        /// <returns></returns>
        public object VisitMap(MapExpr expr)
        {
            var mapExprs = expr.Expressions;
            // Case 2: Map type
            var dictionary = new Dictionary<string, object>();
            foreach (var pair in mapExprs)
            {
                var expression = pair.Item2;
                object result = expression == null ? null : expression.Evaluate(this);
                dictionary[pair.Item1] = result;
            }
            var map = new LMap(dictionary);
            return map;
        }
Exemple #2
0
 /// <summary>
 /// Creates a map expression from the parameters supplied.
 /// </summary>
 /// <param name="items"></param>
 /// <param name="token"></param>
 /// <returns></returns>
 public static Expr Map(List<Tuple<string, Expr>> items, TokenData token)
 {
     var exp = new MapExpr();
     exp.Expressions = items;
     SetupContext(exp, token);
     return exp;
 }
Exemple #3
0
 /// <summary>
 /// Visits the function call expression tree
 /// </summary>
 /// <param name="exp"></param>
 public object VisitMap(MapExpr exp)
 {
     return null;
 }