1 /* 2 // $Id: //open/mondrian/src/main/mondrian/calc/ListCalc.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.Evaluator; 13 14 import java.util.List; 15 16 /** 17 * Expression which evaluates a set of members or tuples to a list. 18 * 19 * @author jhyde 20 * @version $Id: //open/mondrian/src/main/mondrian/calc/ListCalc.java#3 $ 21 * @since Sep 27, 2005 22 */ 23 public interface ListCalc extends Calc { 24 /** 25 * Evaluates an expression to yield a list of members or tuples. 26 * 27 * <p>The list is immutable if {@link #getResultStyle()} yields 28 * {@link mondrian.calc.ExpCompiler.ResultStyle#MUTABLE_LIST}. Otherwise, 29 * the caller must not modify the list. 30 * 31 * @param evaluator Evaluation context 32 * @return A list of members or tuples, never null. 33 */ 34 List evaluateList(Evaluator evaluator); 35 } 36 37 // End ListCalc.java 38