// // Generated by JTB 1.3.2 // package org.gnunet.seaspider.parser.nodes; /** * Grammar production: *
 * f0 -> TypeSpecifier()
 * f1 -> <IDENTIFIER>
 * f2 -> [ Array() | ":" ConstantExpression() ]
 * f3 -> [ <IDENTIFIER> ]
 * f4 -> ";"
 * 
*/ public class StructDeclaration implements Node { public TypeSpecifier f0; public NodeToken f1; public NodeOptional f2; public NodeOptional f3; public NodeToken f4; public StructDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2, NodeOptional n3, NodeToken n4) { f0 = n0; f1 = n1; f2 = n2; f3 = n3; f4 = n4; } public StructDeclaration(TypeSpecifier n0, NodeToken n1, NodeOptional n2, NodeOptional n3) { f0 = n0; f1 = n1; f2 = n2; f3 = n3; f4 = new NodeToken(";"); } public void accept(org.gnunet.seaspider.parser.visitors.Visitor v) { v.visit(this); } public R accept(org.gnunet.seaspider.parser.visitors.GJVisitor v, A argu) { return v.visit(this,argu); } public R accept(org.gnunet.seaspider.parser.visitors.GJNoArguVisitor v) { return v.visit(this); } public void accept(org.gnunet.seaspider.parser.visitors.GJVoidVisitor v, A argu) { v.visit(this,argu); } }