From c5b60e2977aba23d3b1596c7b9efd09d24d7e9c1 Mon Sep 17 00:00:00 2001 From: iska Date: Sat, 4 Oct 2014 23:28:00 +0200 Subject: [PATCH] Add method to consume characters up-to a given string in Input Stream Reader --- HTMLKit/HTMLInputStreamReader.h | 1 + HTMLKit/HTMLInputStreamReader.m | 8 ++++++++ 2 files changed, 9 insertions(+) diff --git a/HTMLKit/HTMLInputStreamReader.h b/HTMLKit/HTMLInputStreamReader.h index 7823a03..f102ba4 100644 --- a/HTMLKit/HTMLInputStreamReader.h +++ b/HTMLKit/HTMLInputStreamReader.h @@ -31,6 +31,7 @@ - (BOOL)consumeHexInt:(unsigned int *)result; - (BOOL)consumeString:(NSString *)string caseSensitive:(BOOL)caseSensitive; - (NSString *)consumeCharactersUpToCharactersInString:(NSString *)characters; +- (NSString *)consumeCharactersUpToString:(NSString *)string; - (void)markCurrentLocation; - (void)rewindToMarkedLocation; diff --git a/HTMLKit/HTMLInputStreamReader.m b/HTMLKit/HTMLInputStreamReader.m index bbe6bd3..c91f029 100644 --- a/HTMLKit/HTMLInputStreamReader.m +++ b/HTMLKit/HTMLInputStreamReader.m @@ -162,6 +162,14 @@ return consumed.length > 0 ? consumed : nil; } +- (NSString *)consumeCharactersUpToString:(NSString *)string +{ + NSString *consumed = [NSString string]; + [_scanner scanUpToString:string intoString:&consumed]; + _location = _scanner.scanLocation; + return consumed; +} + - (void)unconsumeCurrentInputCharacter { _location -= _consume;