001 /* 002 // $Id: NodeType.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 */ 020 package net.hydromatic.clapham.graph; 021 022 /** 023 * Constants for node kinds. 024 * 025 * @author jhyde 026 * @version $Id: NodeType.java 3 2009-05-11 08:11:57Z jhyde $ 027 * @since Aug 26, 2008 028 */ 029 public enum NodeType { 030 TERM, // terminal symbol 031 NONTERM, // nonterminal symbol 032 EPS, // empty 033 ALT, // alternative: | 034 ITER, // iteration: { } 035 OPT, // option: [ ] 036 RERUN, // the optimization of: a {a} or a {b a} 037 WRAP // forces line break if found in the outer structure 038 } 039 040 // End NodeType.java