groovy.util
Class Eval

java.lang.Object
  extended by groovy.util.Eval

public class Eval
extends Object

Allow easy integration from Groovy into Java through convenience methods.

This class is a simple helper on top of GroovyShell. You can use it to evaluate small Groovy scripts that don't need large Binding objects. For example, this script executes with no errors:

 assert 10 == Eval.me(' 2 * 4 + 2')
 assert 10 == Eval.x(2, ' x * 4 + 2')
 

Author:
Dierk Koenig
See Also:
GroovyShell

Constructor Summary
Eval()
           
 
Method Summary
static Object me(String expression)
          Evaluates the specified String expression and returns the result.
static Object me(String symbol, Object object, String expression)
          Evaluates the specified String expression and makes the parameter available inside the script, returning the result.
static Object x(Object x, String expression)
          Evaluates the specified String expression and makes the parameter available inside the script bound to a variable named 'x', returning the result.
static Object xy(Object x, Object y, String expression)
          Evaluates the specified String expression and makes the first two parameters available inside the script bound to variables named 'x' and 'y' respectively, returning the result.
static Object xyz(Object x, Object y, Object z, String expression)
          Evaluates the specified String expression and makes the first three parameters available inside the script bound to variables named 'x', 'y', and 'z' respectively, returning the result.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Eval

public Eval()
Method Detail

me

public static Object me(String expression)
                 throws CompilationFailedException
Evaluates the specified String expression and returns the result. For example:
 assert 10 == Eval.me(' 2 * 4 + 2')
 

Parameters:
expression - the Groovy expression to evaluate
Returns:
the result of the expression
Throws:
CompilationFailedException - if expression is not valid Groovy

me

public static Object me(String symbol,
                        Object object,
                        String expression)
                 throws CompilationFailedException
Evaluates the specified String expression and makes the parameter available inside the script, returning the result. For example, this code binds the 'x' variable:
 assert 10 == Eval.me('x', 2, ' x * 4 + 2')
 

Parameters:
expression - the Groovy expression to evaluate
Returns:
the result of the expression
Throws:
CompilationFailedException - if expression is not valid Groovy

x

public static Object x(Object x,
                       String expression)
                throws CompilationFailedException
Evaluates the specified String expression and makes the parameter available inside the script bound to a variable named 'x', returning the result. For example, this code executes without failure:
 assert 10 == Eval.x(2, ' x * 4 + 2')
 

Parameters:
expression - the Groovy expression to evaluate
Returns:
the result of the expression
Throws:
CompilationFailedException - if expression is not valid Groovy

xy

public static Object xy(Object x,
                        Object y,
                        String expression)
                 throws CompilationFailedException
Evaluates the specified String expression and makes the first two parameters available inside the script bound to variables named 'x' and 'y' respectively, returning the result. For example, this code executes without failure:
 assert 10 == Eval.xy(2, 4, ' x * y + 2')
 

Parameters:
expression - the Groovy expression to evaluate
Returns:
the result of the expression
Throws:
CompilationFailedException - if expression is not valid Groovy

xyz

public static Object xyz(Object x,
                         Object y,
                         Object z,
                         String expression)
                  throws CompilationFailedException
Evaluates the specified String expression and makes the first three parameters available inside the script bound to variables named 'x', 'y', and 'z' respectively, returning the result. For example, this code executes without failure:
 assert 10 == Eval.xyz(2, 4, 2, ' x * y + z')
 

Parameters:
expression - the Groovy expression to evaluate
Returns:
the result of the expression
Throws:
CompilationFailedException - if expression is not valid Groovy

Copyright © 2003-2012 The Codehaus. All rights reserved.