code: def parse(io)
        io.rewind
        raise NotLoadedError, 'load before parsing (#load!)' if @parser.nil?
  
        data = strip_comments_and_obsolete_tags!(io)
  
        @tree = @parser.parse(data)
        raise_parser_error! if @tree.nil?
  
        true
      end
docs: Parses an IO stream.
  
   @param io [#read, #rewind] An IO stream containing the Steam Language
     data.
   @return [Bool] returns true unless an error is thrown