001/*
002// $Id: ProductionNode.java 3 2009-05-11 08:11:57Z jhyde $
003// Clapham generates railroad diagrams to represent computer language grammars.
004// Copyright (C) 2008-2009 Julian Hyde
005//
006// This program is free software; you can redistribute it and/or modify it
007// under the terms of the GNU General Public License as published by the Free
008// Software Foundation; either version 2 of the License, or (at your option)
009// any later version approved by The Eigenbase Project.
010//
011// This program is distributed in the hope that it will be useful,
012// but WITHOUT ANY WARRANTY; without even the implied warranty of
013// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
014// GNU General Public License for more details.
015//
016// You should have received a copy of the GNU General Public License
017// along with this program; if not, write to the Free Software
018// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
019*/
020package net.hydromatic.clapham.parser;
021
022/**
023 * TODO:
024*
025* @author jhyde
026* @version $Id: ProductionNode.java 3 2009-05-11 08:11:57Z jhyde $
027* @since Jul 30, 2008
028*/
029public class ProductionNode implements EbnfNode {
030    public final IdentifierNode id;
031    public final EbnfNode expression;
032
033    public ProductionNode(
034        IdentifierNode id,
035        EbnfNode expression)
036    {
037        this.id = id;
038        this.expression = expression;
039    }
040
041    public void toString(StringBuilder buf) {
042        id.toString(buf);
043        buf.append(" = ");
044        expression.toString(buf);
045    }
046}
047
048// End ProductionNode.java