 
	import java.io.*;
	import java.util.*;
	import demeter.*;
	import java.lang.*;


import demeter.*;
class Nonempty_Symbol_List implements Cloneable {
  private Symbol it;
  public Symbol get_it() { return it; }
  public void set_it(Symbol new_it)
    { it = new_it; }
  private Nonempty_Symbol_List next;
  public Nonempty_Symbol_List get_next() { return next; }
  public void set_next(Nonempty_Symbol_List new_next)
    { next = new_next; }
  Nonempty_Symbol_List() { }
  public Nonempty_Symbol_List(Symbol it, Nonempty_Symbol_List next) {
    super();
    set_it(it);
    set_next(next);
  }
  public static Nonempty_Symbol_List parse(java.io.InputStream in) throws ParseError
    { return new Parser(in)._Nonempty_Symbol_List(); }
  public static Nonempty_Symbol_List parse(String str) throws ParseError
    { return parse(new java.io.StringBufferInputStream(str)); }
  public void all_trv1_bef(AppendVisitor av) {
  }
  public void all_trv1_aft(AppendVisitor av) {
  }
  public void all_trv1(AppendVisitor av) {
    all_trv1_bef(av);
    it.all_trv1(av);
    if (next != null) {
      next.all_trv1(av);
    }
    all_trv1_aft(av);
  }
}

