void nameReturn(t_tree node) { if (node->Node.Return.Expr != NULL) nameExpr(node->Node.Return.Expr); nameStmnt(node->Node.Stmnt.Next); }
void nameWhile(t_tree node) { nameExpr(node->Node.While.Expr); nameStmnt(node->Node.While.Stmnt); nameStmnt(node->Node.Stmnt.Next); }
void nameAssign(t_tree node) { checkIdUndefined(node->Node.Assign.Id, node->LineNr); nameExpr(node->Node.Assign.Expr); nameStmnt(node->Node.Stmnt.Next); }
void nameIf(t_tree node) { nameExpr(node->Node.If.Expr); nameStmnt(node->Node.If.Then); if (node->Node.If.Else != NULL) nameStmnt(node->Node.If.Else); nameStmnt(node->Node.Stmnt.Next); }
void nameActual(t_tree node, int number) { if (node == NULL) return; // this sets up the order of the actuals so we know // which Actual to match up with which Formal. node->Node.Actual.Number = number; nameExpr(node->Node.Actual.Expr); nameActual(node->Node.Actual.Next, number + 1); }
void nameMatValue(t_tree node) { int i; for (i = 0; i < 9; i++) nameExpr(node->Node.MatValue.Values[i]); }
void nameVecValue(t_tree node) { int i; for (i = 0; i < 3; i++) nameExpr(node->Node.VecValue.Values[i]); }
void nameBinary(t_tree node) { nameExpr(node->Node.Binary.LeftOperand); nameExpr(node->Node.Binary.RightOperand); }
void nameUnary(t_tree node) { nameExpr(node->Node.Unary.Expr); }
void nameWrite(t_tree node) { nameExpr(node->Node.Write.Expr); nameStmnt(node->Node.Stmnt.Next); }