001/* 002 * Copyright (c) 2012-2017 Institut National des Sciences Appliquées de Lyon (INSA-Lyon) 003 * 004 * All rights reserved. This program and the accompanying materials 005 * are made available under the terms of the Eclipse Public License v1.0 006 * which accompanies this distribution, and is available at 007 * http://www.eclipse.org/legal/epl-v10.html 008 */ 009 010package org.eclipse.golo.compiler.ir; 011 012import java.util.Set; 013import java.util.Collection; 014 015public interface FunctionContainer { 016 Set<GoloFunction> getFunctions(); 017 018 void addFunction(GoloFunction func); 019 020 default void addFunctions(Collection<GoloFunction> funcs) { 021 for (GoloFunction f : funcs) { 022 addFunction(f); 023 } 024 } 025 026 boolean hasFunctions(); 027}