# File lib/vendor/fssm/cache.rb, line 53
    def recurse_on_key(key, create)
      key = sanitize_key(key)
      node = self

      until key.empty?
        segment = key.shift
        node = create ? node.child!(segment) : node.child(segment)
        return nil unless node
      end

      node
    end