Index: pkg/dartdoc/ast.dart |
diff --git a/pkg/dartdoc/ast.dart b/pkg/dartdoc/ast.dart |
deleted file mode 100644 |
index 103e46dabb454ae156daa5518b8e736c64f3f0b3..0000000000000000000000000000000000000000 |
--- a/pkg/dartdoc/ast.dart |
+++ /dev/null |
@@ -1,63 +0,0 @@ |
-// Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file |
-// for details. All rights reserved. Use of this source code is governed by a |
-// BSD-style license that can be found in the LICENSE file. |
- |
-/// Base class for any AST item. Roughly corresponds to Node in the DOM. Will |
-/// be either an Element or Text. |
-abstract class Node { |
- void accept(NodeVisitor visitor); |
-} |
- |
-/// A named tag that can contain other nodes. |
-class Element implements Node { |
- final String tag; |
- final List<Node> children; |
- final Map<String, String> attributes; |
- |
- Element(this.tag, this.children) |
- : attributes = <String, String>{}; |
- |
- Element.empty(this.tag) |
- : children = null, |
- attributes = <String, String>{}; |
- |
- Element.withTag(this.tag) |
- : children = [], |
- attributes = <String, String>{}; |
- |
- Element.text(this.tag, String text) |
- : children = [new Text(text)], |
- attributes = <String, String>{}; |
- |
- bool get isEmpty => children == null; |
- |
- void accept(NodeVisitor visitor) { |
- if (visitor.visitElementBefore(this)) { |
- for (final child in children) child.accept(visitor); |
- visitor.visitElementAfter(this); |
- } |
- } |
-} |
- |
-/// A plain text element. |
-class Text implements Node { |
- final String text; |
- Text(this.text); |
- |
- void accept(NodeVisitor visitor) => visitor.visitText(this); |
-} |
- |
-/// Visitor pattern for the AST. Renderers or other AST transformers should |
-/// implement this. |
-abstract class NodeVisitor { |
- /// Called when a Text node has been reached. |
- void visitText(Text text); |
- |
- /// Called when an Element has been reached, before its children have been |
- /// visited. Return `false` to skip its children. |
- bool visitElementBefore(Element element); |
- |
- /// Called when an Element has been reached, after its children have been |
- /// visited. Will not be called if [visitElementBefore] returns `false`. |
- void visitElementAfter(Element element); |
-} |