Sha256: d89f38b120c1fea80ec72dd72589571cc71bc20143b053904916fd79bb564e19
Contents?: true
Size: 901 Bytes
Versions: 3
Compression:
Stored size: 901 Bytes
Contents
begin require 'strscan' $USING_STRSCAN = true rescue LoadError $USING_STRSCAN = false end unless $USING_STRSCAN # Simple substitution for strscan in Ruby for users that lack strscan. # class StringScanner attr_accessor :pointer def initialize(string) @orig, @pointer = string, 0 end def string @orig end def rest @orig[pointer..-1] end def rest? rest.length > 0 end def check(regexp) apply_regexp(regexp, false) end def scan(regexp) apply_regexp(regexp, true) end private def advance_pointer(matchData) @pointer += matchData[0].length end def apply_regexp(regexp, advancePointer) md = regexp.match(rest) if md && md[0] && (md.begin(0) == 0) advance_pointer(md) if advancePointer return md[0] else return nil end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
rpdf2txt-0.8.4 | lib/rpdf2txt-rockit/stringscanner.rb |
rpdf2txt-0.8.3 | lib/rpdf2txt-rockit/stringscanner.rb |
rpdf2txt-0.8.2 | lib/rpdf2txt-rockit/stringscanner.rb |