/*______________________________________________________________________________ * * org.eidola.kernel.error.DuplicateParameter * * Part of the Eidola Kernel Reference Implementation * See http://eidola.org for oodles of relevant fun! * *______________________________________________________________________________ * * Copyright 2000-2001 Paul Cantrell * * This program is free software; you can redistribute it and/or modify it under * the terms of the GNU General Public License version 2, as published by the * Free Software Foundation. See the file LICENSE.html for more information. * * This program is distributed in the hope that it will be useful, but WITHOUT * ANY WARRANTY, including the implied warranty of MERCHANTABILITY or FITNESS * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. * * You should have received a copy of the GNU General Public License along with * this program; if not, write to the Free Software Foundation, Inc. / 59 Temple * Place, Suite 330 / Boston, MA 02111-1307 / USA. *_______________________________________________________________________________ */ package org.eidola.kernel.error; import org.eidola.kernel.*; /** A variable appears twice in a function's inputs or outputs. @author Paul Cantrell @version [Development version] */ public class DuplicateParameter extends LazySemanticViolation { public DuplicateParameter(Element culprit, ContainerPart part, String s) { super(culprit, s); if(part != Function.INPUTS && part != Function.OUTPUTS) throw new IllegalArgumentException( "part is " + part.getName() + "; should be inputs or outputs"); this.part = part; } public ContainerPart getPart() { return part; } private ContainerPart part; }