001/* 002// This software is subject to the terms of the Eclipse Public License v1.0 003// Agreement, available at the following URL: 004// http://www.eclipse.org/legal/epl-v10.html. 005// You must accept the terms of that agreement to use this software. 006// 007// Copyright (C) 2006-2011 Pentaho 008// All Rights Reserved. 009*/ 010package mondrian.calc; 011 012import mondrian.olap.Evaluator; 013 014/** 015 * Expression which evaluates a set of members or tuples to a list. 016 * 017 * @author jhyde 018 * @since Sep 27, 2005 019 */ 020public interface ListCalc extends IterCalc { 021 /** 022 * Evaluates an expression to yield a list of tuples. 023 * 024 * <p>The list is immutable if {@link #getResultStyle()} yields 025 * {@link ResultStyle#MUTABLE_LIST}. Otherwise, 026 * the caller must not modify the list. 027 * 028 * @param evaluator Evaluation context 029 * @return A list of tuples, never null. 030 */ 031 TupleList evaluateList(Evaluator evaluator); 032} 033 034// End ListCalc.java