module Chronic::Handlers

def get_anchor(tokens, options) #:nodoc:

:nodoc:
def get_anchor(tokens, options) #:nodoc:
  grabber = Grabber.new(:this)
  pointer = :future
  repeaters = self.get_repeaters(tokens)
  repeaters.size.times { tokens.pop }
  if tokens.first && tokens.first.get_tag(Grabber)
    grabber = tokens.first.get_tag(Grabber)
    tokens.pop
  end
  head = repeaters.shift
  head.start = Chronic.now
  case grabber.type
    when :last
      outer_span = head.next(:past)
    when :this
      if options[:context] != :past and repeaters.size > 0
        outer_span = head.this(:none)
      else
        outer_span = head.this(options[:context])
      end
    when :next
      outer_span = head.next(:future)
    else raise(ChronicPain, "Invalid grabber")
  end
  puts "--#{outer_span}" if Chronic.debug
  find_within(repeaters, outer_span, pointer)
end