* @param name
*/
public ExpressionExpression(ExpressionNamespace namespace, String expression, String name) {
super(namespace, expression, "", name, null);
try {
ExpressionParser parser = new ExpressionParser(new StringReader(expression));
root = parser.ExpressionScript();
// inflate anonymous expressions and register anonymous leaf (3x faster)
StringBuffer inflated = (StringBuffer)root.jjtAccept(ANONYMOUSINFLATE_VISITOR, m_namespace);
ExpressionParser parserInflate = new ExpressionParser(new StringReader(inflated.toString()));
SimpleNode newRoot = parserInflate.ExpressionScript();
// swap
root = newRoot;
}
catch (Throwable t) {