unscan() public

Set the scan pointer to the previous position. Only one previous position is remembered, and it changes with each scanning operation.

  s = StringScanner.new('test string')
  s.scan(/\w+/)        # => "test"
  s.unscan
  s.scan(/../)         # => "te"
  s.scan(/\d/)         # => nil
  s.unscan             # ScanError: unscan failed: previous match had failed
Show source
Register or log in to add new notes.