Sha256: 9fbc66ff891e3b1ff2e2334d01f6d8d0f23663e07e32e2010358fbde82b6f46e

Contents?: true

Size: 648 Bytes

Versions: 6

Compression:

Stored size: 648 Bytes

Contents

# frozen_string_literal: true

class Parser::Source::Range
  def succ
    adjust(begin_pos: +1, end_pos: +1)
  end

  def wrap_rwhitespace(whitespaces: /\A\s+/)
    whitespace = @source_buffer.slice(end_pos..-1)[whitespaces] || ''
    adjust(end_pos: whitespace.size)
  end

  def wrap_rwhitespace_and_comments(whitespaces: /\A\s+/)
    current = wrap_rwhitespace(whitespaces: whitespaces)
    while @source_buffer.slice(current.end_pos) == '#'
      comment = @source_buffer.slice(current.end_pos..-1)[/\A[^\n]+/] || ''
      current = current.adjust(end_pos: comment.size).wrap_rwhitespace(whitespaces: whitespaces)
    end
    current
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
deep-cover-core-0.7.0 lib/deep_cover/parser_ext/range.rb
deep-cover-core-0.6.4 lib/deep_cover/parser_ext/range.rb
deep-cover-core-0.6.3 lib/deep_cover/parser_ext/range.rb
deep-cover-core-0.6.3.pre lib/deep_cover/parser_ext/range.rb
deep-cover-0.6.2 lib/deep_cover/parser_ext/range.rb
deep-cover-0.6.1 lib/deep_cover/parser_ext/range.rb