func (da *Cedar) Value(id int) (value int, err error) {
	value = da.Array[id].Value
	if value >= 0 {
		return value, nil
	}
	to := da.Array[id].base()
	if da.Array[to].Check == id && da.Array[to].Value >= 0 {
		return da.Array[to].Value, nil
	}
	return 0, ErrNoValue
}
func (da *Cedar) Value(id int) (value int, err error) {
	value = da.Array[id].Value
	if value >= 0 {
		return value, nil
	}
	to := da.Array[id].base()
	if da.Array[to].Check == id && da.Array[to].Value >= 0 {
		return da.Array[to].Value, nil
	}
	return 0, ErrNoValue
}
func ( da * Cedar ) Value ( id int ) ( value int , err error ) { value = da . Array [ id ] . Value if value >= 0 { return value , nil } to := da . Array [ id ] . base ( ) if da . Array [ to ] . Check == id && da . Array [ to ] . Value >= 0 { return da . Array [ to ] . Value , nil } return 0 , ErrNoValue }
// Value returns the value of the node with the given `id`.
// It will return ErrNoValue, if the node does not have a value.
Value returns the value of the node with the given id . It will return ErrNoValue if the node does not have a value .