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 that evaluates a set of tuples to a {@link TupleIterable}. 016 * 017 * @author Richard Emberson 018 * @since Jan 11, 2007 019 */ 020public interface IterCalc extends Calc { 021 /** 022 * Evaluates an expression to yield an Iterable of members or tuples. 023 * 024 * <p>The Iterable is immutable. 025 * 026 * @param evaluator Evaluation context 027 * @return An Iterable of members or tuples, never null. 028 */ 029 TupleIterable evaluateIterable(Evaluator evaluator); 030} 031 032// End IterCalc.java