View Javadoc

1   package org.lsst.ccs.plugin.jas3.trending.timeselection;
2   
3   import gnu.jel.CompilationException;
4   import gnu.jel.CompiledExpression;
5   import gnu.jel.Evaluator;
6   import gnu.jel.Library;
7   
8   /**
9    *
10   * @author turri
11   */
12  public class Compiler {
13  
14      public static TimeSelectionCompiledExpression compile(String expression) throws CompilationException {
15          // Set up the library
16          Class[] staticLib = { java.lang.Math.class };
17          Class[] dynamicLib = { TimeSelectionEvaluator.class };
18          Class[] dotLib = { Object.class, String.class, java.util.Date.class };
19          Library lib=new Library(staticLib, dynamicLib, dotLib, new TimeSelectionNameResolver(), null);
20          lib.markStateDependent("random",null);
21          CompiledExpression cexpr = Evaluator.compile(expression,lib,null);
22          return new TimeSelectionCompiledExpression(cexpr);
23      }
24  }