tree 2099ba395ceb3f3ad5b8099e26bb02205c86989a
parent 4ef74c3aa17bac2b18006ee3144e16eee833fb9c
author stephen <spmallette@gmail.com> 1574257149 -0500
committer stephen <spmallette@gmail.com> 1575390859 -0500

TINKERPOP-2235 Refactored Scoping interface

Pulled back all functionality that grabs scope values to Scoping. In this way we have just one place for this logic. Also decided to use exceptions to deal with keys not being found. Not thinking the performance costs of the exception will matter here much as we won't be generating exceptions repeatedly for purpose of flow control - we really just generate them when there is actual error in the traversal syntax and the traversal is headed for exception anyway. if we find that this is a mistaken understanding we can go the way of FastNotSuchElementException and deal with things that way. The alternative would have been to deal with some kind of new return object for the Scoping methods that could indicate whether the key was present or not, but that approach seemed awkward in the various ways I considered it.
