public IntTypeWriter(Writer writer)
 {
     m_writer = writer;
 }
 public LocalDeclWriter(Writer writer)
 {
     m_writer = writer;
 }
 public StringLiteralWriter(Writer writer)
 {
     m_writer = writer;
 }
 public TmpIntRegWriter(Writer writer)
 {
     m_writer = writer;
 }
 public PirateWriter(Writer writer)
 {
     m_writer = writer;
 }
 public ReturnStmtWriter(Writer writer)
 {
     m_writer = writer;
 }
 public AssignWriter(Writer writer, string op)
 {
     m_op = op;
     m_writer = writer;
 }
 public NumTypeWriter(Writer writer)
 {
     m_writer = writer;
 }
 public AtomExprListWriter(Writer writer)
 {
     m_writer = writer;
     m_is_first = true;
 }
 public AssignWriter(Writer writer)
 {
     m_op = "=";
     m_writer = writer;
 }
 public TmpStringRegWriter(Writer writer)
 {
     m_writer = writer;
 }
 public TmpPmcRegWriter(Writer writer)
 {
     m_writer = writer;
 }
 public TmpNumRegWriter(Writer writer)
 {
     m_writer = writer;
 }
 public NamedRegWriter(Writer writer)
 {
     m_writer = writer;
 }
 public BinaryExprWriter(Writer writer, string op)
 {
     m_writer = writer;
     m_op = op;
 }
 public NumLiteralWriter(Writer writer)
 {
     m_writer = writer;
 }
 public CallStmtWriter(Writer writer)
 {
     m_writer = writer;
 }
 public ParamDeclWriter(Writer writer)
 {
     m_writer = writer;
 }
 public CallWriter(Writer writer)
 {
     m_writer = writer;
 }
 public RegListWriter(Writer writer)
 {
     m_writer = writer;
     m_is_first = true;
 }
 public CommentWriter(Writer writer)
 {
     m_writer = writer;
 }
 public StmtListWriter(Writer writer)
 {
     m_writer = writer;
 }
 public IntLiteralWriter(Writer writer)
 {
     m_writer = writer;
 }
 public StringTypeWriter(Writer writer)
 {
     m_writer = writer;
 }
 public SubWriter(Writer writer)
 {
     m_writer = writer;
 }