1 /***** BEGIN LICENSE BLOCK ***** 2 * Version: CPL 1.0/GPL 2.0/LGPL 2.1 3 * 4 * The contents of this file are subject to the Common Public 5 * License Version 1.0 (the "License"); you may not use this file 6 * except in compliance with the License. You may obtain a copy of 7 * the License at http://www.eclipse.org/legal/cpl-v10.html 8 * 9 * Software distributed under the License is distributed on an "AS 10 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or 11 * implied. See the License for the specific language governing 12 * rights and limitations under the License. 13 * 14 * Copyright (C) 2007 Thomas E Enebo <enebo@acm.org> 15 * Copyright (C) 2006 Charles Oliver Nutter <headius@headius.com> 16 * 17 * Alternatively, the contents of this file may be used under the terms of 18 * either of the GNU General Public License Version 2 or later (the "GPL"), 19 * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), 20 * in which case the provisions of the GPL or the LGPL are applicable instead 21 * of those above. If you wish to allow use of your version of this file only 22 * under the terms of either the GPL or the LGPL, and not to allow others to 23 * use your version of this file under the terms of the CPL, indicate your 24 * decision by deleting the provisions above and replace them with the notice 25 * and other provisions required by the GPL or the LGPL. If you do not delete 26 * the provisions above, a recipient may use your version of this file under 27 * the terms of any one of the CPL, the GPL or the LGPL. 28 ***** END LICENSE BLOCK *****/ 29 package org.jruby.ast; 30 31 /** 32 * Any thing which implements this represents a callable-like node which can have a block 33 * associated with it as part of that call. The calls which can be this are: CallNode, FCallNode, 34 * VCallNode, and SuperNode. Blocks (the IterNode that this interface refers to can be either 35 * an IterNode ( {...} or do ... end ) or a BlockPassNode (&block). 36 * 37 * It is likely we can remove this interface once the parser explicitly passes all iters into 38 * the callable node during construction. 39 */ 40 public interface BlockAcceptingNode { 41 public Node getIterNode(); 42 43 public void setIterNode(Node iterNode); 44 }