====== Tisk programu uloženého v syntaktickém stromu =====
Zdrojový text uložený v syntaktickém stromu vytiskne třída **Product**.
Tuto třídu vytvoří generátor podobně jako třídu **Parser**. \\
Nečte se zdrojový text ze vstupu, ale data se získávají z uzl; syntaktického stromu. \\
Rozhodování při výběru alternativ je také založeno na uložených datech.
class Product (Output) :
def send_if_stat (self, param) :
self.send ("if")
self.send ("(")
self.send_expr (param.cond)
self.send (")")
self.send_stat (param.then_code)
if param.else_code != None :
self.style_new_line ()
self.send ("else")
self.send_stat (param.else_code)
void CmmProduct::send_if_stat (CmmIfStat * item)
{
send ("if");
send ("(");
send_expr (item->cond);
send (")");
send_stat (item->then_code);
if (item->else_code != NULL)
{
style_new_line ();
send ("else");
send_stat (item->else_code);
}
}