public virtual AstNode VisitMethodDeclare(MethodDeclareNode n) { Visit(n.Attributes); Visit(n.ReturnType); Visit(n.Name); Visit(n.Parameters); Visit(n.GenericTypeParameters); Visit(n.TypeConstraints); return(n); }
public AstNode VisitMethodDeclare(MethodDeclareNode n) { // TODO: Can we have attributes here? Visit(n.ReturnType); Append(" "); Visit(n.Name); if (!n.GenericTypeParameters.IsNullOrEmpty()) { Append("<"); Visit(n.GenericTypeParameters[0]); for (var i = 1; i < n.GenericTypeParameters.Count; i++) { Append(", "); Visit(n.GenericTypeParameters[i]); } Append(">"); } Append("("); if (!n.Parameters.IsNullOrEmpty()) { Visit(n.Parameters[0]); for (var i = 1; i < n.Parameters.Count; i++) { Append(", "); Visit(n.Parameters[i]); } } Append(")"); if (!n.GenericTypeParameters.IsNullOrEmpty() && !n.TypeConstraints.IsNullOrEmpty()) { IncreaseIndent(); AppendLineAndIndent(); Visit(n.TypeConstraints[0]); foreach (var tc in n.TypeConstraints.Skip(1)) { AppendLineAndIndent(); Visit(tc); } DecreaseIndent(); } Append(";"); return(n); }