Files
Orchard/src/Orchard.Web/Modules/Orchard.Widgets/SimpleScripting/Ast/AstNode.cs
T
2010-11-27 19:57:33 -08:00

26 lines
744 B
C#

using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Orchard.Widgets.SimpleScripting.Ast {
public abstract class AstNode {
public virtual IEnumerable<AstNode> Children {
get {
return Enumerable.Empty<AstNode>();
}
}
public abstract object Accept(AstVisitor visitor);
public override string ToString() {
var sb = new StringBuilder();
sb.Append(this.GetType().Name);
var ewt = (this as IAstNodeWithToken);
if (ewt != null) {
sb.Append(" - ");
sb.Append(ewt.Token);
}
return sb.ToString();
}
}
}