aboutsummaryrefslogtreecommitdiff
path: root/src/pkg/template/parse/node.go
diff options
context:
space:
mode:
authorRob Pike <r@golang.org>2011-08-18 16:07:28 +1000
committerRob Pike <r@golang.org>2011-08-18 16:07:28 +1000
commit4cf630da0feea55844ac26356bcefbd95ceb665b (patch)
tree7ed529ed9f4e4294be2bc985f002170c48a5448e /src/pkg/template/parse/node.go
parenta576535e5e257ee3156b6b69866f91b280c63e94 (diff)
downloadgo-4cf630da0feea55844ac26356bcefbd95ceb665b.tar.xz
exp/template: remove else and end nodes from public view.
They are used internally and do not appear in the final parse tree. R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/4905052
Diffstat (limited to 'src/pkg/template/parse/node.go')
-rw-r--r--src/pkg/template/parse/node.go31
1 files changed, 16 insertions, 15 deletions
diff --git a/src/pkg/template/parse/node.go b/src/pkg/template/parse/node.go
index a917418dc3..6f0b429b95 100644
--- a/src/pkg/template/parse/node.go
+++ b/src/pkg/template/parse/node.go
@@ -35,8 +35,8 @@ const (
NodeBool // A boolean constant.
NodeCommand // An element of a pipeline.
NodeDot // The cursor, dot.
- NodeElse // An else action.
- NodeEnd // An end action.
+ nodeElse // An else action. Not added to tree.
+ nodeEnd // An end action. Not added to tree.
NodeField // A field or method name.
NodeIdentifier // An identifier; always a function name.
NodeIf // An if action.
@@ -356,36 +356,37 @@ func (s *StringNode) String() string {
return fmt.Sprintf("S=%#q", s.Text)
}
-// EndNode represents an {{end}} action. It is represented by a nil pointer.
-type EndNode bool
+// endNode represents an {{end}} action. It is represented by a nil pointer.
+// It does not appear in the final parse tree.
+type endNode bool
-func newEnd() *EndNode {
+func newEnd() *endNode {
return nil
}
-func (e *EndNode) Type() NodeType {
- return NodeEnd
+func (e *endNode) Type() NodeType {
+ return nodeEnd
}
-func (e *EndNode) String() string {
+func (e *endNode) String() string {
return "{{end}}"
}
-// ElseNode represents an {{else}} action.
-type ElseNode struct {
+// elseNode represents an {{else}} action. Does not appear in the final tree.
+type elseNode struct {
NodeType
Line int // The line number in the input.
}
-func newElse(line int) *ElseNode {
- return &ElseNode{NodeType: NodeElse, Line: line}
+func newElse(line int) *elseNode {
+ return &elseNode{NodeType: nodeElse, Line: line}
}
-func (e *ElseNode) Type() NodeType {
- return NodeElse
+func (e *elseNode) Type() NodeType {
+ return nodeElse
}
-func (e *ElseNode) String() string {
+func (e *elseNode) String() string {
return "{{else}}"
}