private JoinStatement VisitJoinStatement(JoinStatement joinstmt)
{
JoinPatternList newJoinPatternList = new JoinPatternList();
for (int i = 0, n = joinstmt.joinPatternList.Length; i < n; i++)
newJoinPatternList.Add((JoinPattern)this.Visit(joinstmt.joinPatternList[i]));
joinstmt.joinPatternList = newJoinPatternList;
joinstmt.statement = (Statement)this.Visit(joinstmt.statement);
joinstmt.attributes = this.VisitAttributeList(joinstmt.attributes);
return joinstmt;
}