_nt_optional_suffix (Treetop::Compiler::Metagrammar)

    # File lib/treetop/compiler/metagrammar.rb, line 1616
          def _nt_optional_suffix
            start_index = index
            if node_cache[:optional_suffix].has_key?(index)
              cached = node_cache[:optional_suffix][index]
              @index = cached.interval.end if cached
              return cached
            end

            if input.index('?', index) == index
              r0 = instantiate_node(Optional,input, index...(index + 1))
              @index += 1
            else
              terminal_parse_failure('?')
              r0 = nil
            end

            node_cache[:optional_suffix][start_index] = r0

            return r0
          end