1 /* 2 // $Id: //open/mondrian/src/main/mondrian/calc/MemberCalc.java#5 $ 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-2007 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 import mondrian.olap.Member; 14 15 /** 16 * Expression which yields a {@link Member}. 17 * 18 * <p>When implementing this interface, it is convenient to extend 19 * {@link mondrian.calc.impl.AbstractMemberCalc}, but it is not required. 20 21 * @author jhyde 22 * @version $Id: //open/mondrian/src/main/mondrian/calc/MemberCalc.java#5 $ 23 * @since Sep 26, 2005 24 */ 25 public interface MemberCalc extends Calc { 26 /** 27 * Evaluates this expression to yield a member. 28 * 29 * <p>May return the null member (see 30 * {@link mondrian.olap.Hierarchy#getNullMember()}) but never null. 31 * 32 * @param evaluator Evaluation context 33 * @return a member 34 */ 35 Member evaluateMember(Evaluator evaluator); 36 } 37 38 // End MemberCalc.java 39