treerack/nodehead.go
2018-01-05 19:06:10 +01:00

29 lines
464 B
Go

package treerack
import "fmt"
type Node struct {
Name string
Nodes []*Node
From, To int
tokens []rune
}
func (n *Node) Tokens() []rune {
defer func() {
if err := recover(); err != nil {
println(len(n.tokens), n.From, n.To)
panic(err)
}
}()
return n.tokens
}
func (n *Node) String() string {
return fmt.Sprintf("%s:%d:%d:%s", n.Name, n.From, n.To, n.Text())
}
func (n *Node) Text() string {
return string(n.Tokens()[n.From:n.To])
}