1 /* 2 // $Id: //open/mondrian/src/main/mondrian/calc/DimensionCalc.java#3 $ 3 // This software is subject to the terms of the Common Public License 4 // Agreement, available at the following URL: 5 // http://www.opensource.org/licenses/cpl.html. 6 // Copyright (C) 2006-2006 Julian Hyde 7 // All Rights Reserved. 8 // You must accept the terms of that agreement to use this software. 9 */ 10 package mondrian.calc; 11 12 import mondrian.olap.Dimension; 13 import mondrian.olap.Evaluator; 14 15 /** 16 * Expression which yields a {@link mondrian.olap.Dimension}. 17 * 18 * <p>When implementing this interface, it is convenient to extend 19 * {@link mondrian.calc.impl.AbstractDimensionCalc}, but it is not required. 20 * 21 * @author jhyde 22 * @version $Id: //open/mondrian/src/main/mondrian/calc/DimensionCalc.java#3 $ 23 * @since Sep 26, 2005 24 */ 25 public interface DimensionCalc extends Calc { 26 /** 27 * Evaluates this expression to yield a dimension. 28 * 29 * <p>Never returns null. 30 * 31 * @param evaluator Evaluation context 32 * @return a dimension 33 */ 34 Dimension evaluateDimension(Evaluator evaluator); 35 } 36 37 // End DimensionCalc.java 38