func (g *Graph) evalBool(e *Graph) bool {
	i, err := g.Eval(e)
	if err != nil {
		return false
	}
	b, _ := _boolf(i)
	return b
}
EvalBool takes a parsed expression and evaluates it in the context of the
current graph, and converts the result to a boolean.
package ogdl
func (g *Graph) Eval(e *Graph) (interface{}, error) {
	switch e.ThisString() {
	case TypePath:
		return g.evalPath(e)
	case TypeExpression:
		return g.evalExpression(e)
	}
	if e.Len() != 0 {
		return e, nil
	}
	return e.ThisScalar(), nil
}