first preliminary version of support for displaying RSS feeds
[mir.git] / source / mir / util / ParameterExpander.java
index b4b6ad4..6f96209 100755 (executable)
 
 package mir.util;
 
-import multex.Failure;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Vector;
+
+import mir.generator.Generator;
+import mir.generator.GeneratorExc;
 import multex.Exc;
 
-import java.util.*;
-import mir.generator.*;
-
 public class ParameterExpander {
   final static String NODE_SEPARATOR = ".";
   final static char STRING_ESCAPE_CHARACTER = '\\';
@@ -593,7 +597,7 @@ public class ParameterExpander {
             currentValue = ((Map) currentValue).get(qualifier);
           }
           else {
-            throw new RuntimeException("cannot reference into anything other than a map");
+            throw new RuntimeException("cannot reference into anything other than a map ('"+qualifier+"')");
           }
         }
         else if (token instanceof IdentifierToken) {
@@ -604,7 +608,7 @@ public class ParameterExpander {
             currentValue = ((Map) currentValue).get(qualifier);
           }
           else {
-            throw new RuntimeException("cannot reference into anything other than a map");
+            throw new RuntimeException("cannot reference into anything other than a map ('"+qualifier+"')");
           }
         }
         else if (token instanceof LeftParenthesisToken) {
@@ -687,7 +691,7 @@ public class ParameterExpander {
       return value;
     }
 
-    private static final int MAX_OPERATOR_LEVEL = 1000;               // && || !
+    private static final int MAX_OPERATOR_LEVEL = 1000;                //
     private static final int LOGICAL_OPERATOR_LEVEL = 5;               // && || !
     private static final int COMPARISON_OPERATOR_LEVEL = 4;            // == <= >= in < >
     private static final int ADDITION_OPERATOR_LEVEL = 3;              // + - &