# File lib/mail/parsers/rfc2822.rb, line 1661 def _nt_phrase start_index = index if node_cache[:phrase].has_key?(index) cached = node_cache[:phrase][index] @index = cached.interval.end if cached return cached end i0 = index r1 = _nt_obs_phrase if r1 r0 = r1 else s2, i2 = [], index loop do r3 = _nt_word if r3 s2 << r3 else break end end if s2.empty? @index = i2 r2 = nil else r2 = instantiate_node(SyntaxNode,input, i2...index, s2) end if r2 r0 = r2 else @index = i0 r0 = nil end end node_cache[:phrase][start_index] = r0 r0 end