diff options
author | openthread <openfibers@gmail.com> | 2014-04-16 18:15:55 +0400 |
---|---|---|
committer | openthread <openfibers@gmail.com> | 2014-04-16 18:15:55 +0400 |
commit | bf22880125be16f7b6a027123757d5107a3df59a (patch) | |
tree | a1ee346efe04573e4a196caeb3e4c3f9b6050501 | |
parent | 3691599e49f6f6ca35dd18d3bc92890e42fc8318 (diff) |
fixed warnings in `FMStatementSplitter` when compiling for mac 64-bit
4 files changed, 20 insertions, 63 deletions
diff --git a/src/extra/FMStatementSplitter/FMStatementKeywordRecogniser.m b/src/extra/FMStatementSplitter/FMStatementKeywordRecogniser.m index 3ca3c27..b968708 100644 --- a/src/extra/FMStatementSplitter/FMStatementKeywordRecogniser.m +++ b/src/extra/FMStatementSplitter/FMStatementKeywordRecogniser.m @@ -98,11 +98,11 @@ NSUInteger remainingChars = [[scanner string] length] - *tokenPosition; if (remainingChars >= kwLength) { - if (CFStringFindWithOptions((CFStringRef)[scanner string], (CFStringRef)keyword, CFRangeMake(*tokenPosition, kwLength), kCFCompareAnchored | kCFCompareCaseInsensitive, NULL)) + if (CFStringFindWithOptions((CFStringRef)[scanner string], (CFStringRef)keyword, CFRangeMake((CFIndex)*tokenPosition, (CFIndex)kwLength), kCFCompareAnchored | kCFCompareCaseInsensitive, NULL)) { if (remainingChars == kwLength || nil == self.invalidFollowingCharacters || - !CFStringFindCharacterFromSet((CFStringRef)[scanner string], (CFCharacterSetRef)self.invalidFollowingCharacters, CFRangeMake(*tokenPosition + kwLength, 1), kCFCompareAnchored, NULL)) + !CFStringFindCharacterFromSet((CFStringRef)[scanner string], (CFCharacterSetRef)self.invalidFollowingCharacters, CFRangeMake((CFIndex)(*tokenPosition + kwLength), 1), kCFCompareAnchored, NULL)) { NSRange result = NSMakeRange(*tokenPosition, kwLength); *tokenPosition = *tokenPosition + kwLength; diff --git a/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.h b/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.h index 567e251..5b5f400 100644 --- a/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.h +++ b/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.h @@ -91,40 +91,40 @@ * * @see endQuote */ -@property (readwrite,copy) NSString *startQuote; +@property (readwrite,nonatomic,copy) NSString *startQuote; /** * Determines the string used to indicate the end of the quoted literal. * * @see startQuote */ -@property (readwrite,copy) NSString *endQuote; +@property (readwrite,nonatomic,copy) NSString *endQuote; /** * Determines the string used to indicate an escaped character in the quoted literal. */ -@property (readwrite,copy) NSString *escapeSequence; +@property (readwrite,nonatomic,copy) NSString *escapeSequence; /** * If `YES`, quoted string will contains `escapeSequence`. * If `NO`, quoted string will not contains `escapeSequence`. * Default is `NO`. */ -@property (nonatomic, assign) BOOL shouldQuoteEscapeSequence; +@property (nonatomic,assign) BOOL shouldQuoteEscapeSequence; /** * Determines how much of the input string to consume when an escaped literal is found, and what to replace it with. */ -@property (readwrite,copy) NSString *(^escapeReplacer)(NSString *tokenStream, NSUInteger *quotePosition); +@property (readwrite,nonatomic,copy) NSString *(^escapeReplacer)(NSString *tokenStream, NSUInteger *quotePosition); /** * Determines the maximum length of the quoted literal not including quotes. To indicate the literal can be any length specify NSNotFound. */ -@property (readwrite,assign) NSUInteger maximumLength; +@property (readwrite,nonatomic,assign) NSUInteger maximumLength; /** * Determines the name of the token produced. */ -@property (readwrite,copy) NSString *name; +@property (readwrite,nonatomic,copy) NSString *name; @end diff --git a/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.m b/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.m index 3db01d6..f27a08a 100644 --- a/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.m +++ b/src/extra/FMStatementSplitter/FMStatementQuotedRecogniser.m @@ -54,49 +54,6 @@ return self; } -#define CPQuotedRecogniserStartQuoteKey @"Q.s" -#define CPQuotedRecogniserEndQuoteKey @"Q.e" -#define CPQuotedRecogniserEscapeSequenceKey @"Q.es" -#define CPQuotedRecogniserMaximumLengthKey @"Q.m" -#define CPQuotedRecogniserNameKey @"Q.n" - -- (id)initWithCoder:(NSCoder *)aDecoder -{ - self = [super init]; - - if (nil != self) - { - [self setStartQuote:[aDecoder decodeObjectForKey:CPQuotedRecogniserStartQuoteKey]]; - [self setEndQuote:[aDecoder decodeObjectForKey:CPQuotedRecogniserEndQuoteKey]]; - [self setEscapeSequence:[aDecoder decodeObjectForKey:CPQuotedRecogniserEscapeSequenceKey]]; - @try - { - [self setMaximumLength:[aDecoder decodeIntegerForKey:CPQuotedRecogniserMaximumLengthKey]]; - } - @catch (NSException *exception) - { - NSLog(@"Warning, value for maximum length too long for this platform, allowing infinite lengths"); - [self setMaximumLength:NSNotFound]; - } - [self setName:[aDecoder decodeObjectForKey:CPQuotedRecogniserNameKey]]; - } - - return self; -} - -- (void)encodeWithCoder:(NSCoder *)aCoder -{ - if (nil != [self escapeReplacer]) - { - NSLog(@"Warning: encoding CPQuoteRecogniser with an escapeReplacer set. This will not be recreated when decoded."); - } - [aCoder encodeObject:[self startQuote] forKey:CPQuotedRecogniserStartQuoteKey]; - [aCoder encodeObject:[self endQuote] forKey:CPQuotedRecogniserEndQuoteKey]; - [aCoder encodeObject:[self escapeSequence] forKey:CPQuotedRecogniserEscapeSequenceKey]; - [aCoder encodeInteger:[self maximumLength] forKey:CPQuotedRecogniserMaximumLengthKey]; - [aCoder encodeObject:[self name] forKey:CPQuotedRecogniserNameKey]; -} - - (NSRange)recogniseRangeWithScanner:(NSScanner *)scanner currentTokenPosition:(NSUInteger *)tokenPosition { NSString *(^er)(NSString *tokenStream, NSUInteger *quotePosition) = [self escapeReplacer]; @@ -104,12 +61,12 @@ NSUInteger endQuoteLength = [self.endQuote length]; NSString *tokenString = [scanner string]; - long inputLength = [tokenString length]; + NSUInteger inputLength = [tokenString length]; NSUInteger rangeLength = [FMStatementQuotedRecogniser minWithLeftParam:inputLength - *tokenPosition rightParam:startQuoteLength + endQuoteLength + self.maximumLength]; - CFRange searchRange = CFRangeMake(*tokenPosition, rangeLength); + CFRange searchRange = CFRangeMake((CFIndex)*tokenPosition, (CFIndex)rangeLength); CFRange range; - BOOL matched = CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.startQuote, searchRange, kCFCompareAnchored, &range); + Boolean matched = CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.startQuote, searchRange, kCFCompareAnchored, &range); CFMutableStringRef outputString = CFStringCreateMutable(kCFAllocatorDefault, 0); @@ -120,22 +77,22 @@ CFRange endRange; CFRange escapeRange; - BOOL matchedEndSequence = CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.endQuote, searchRange, 0L, &endRange); - BOOL matchedEscapeSequence = nil == self.escapeSequence ? NO : CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.escapeSequence, searchRange, 0L, &escapeRange); + Boolean matchedEndSequence = CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.endQuote, searchRange, 0L, &endRange); + Boolean matchedEscapeSequence = nil == self.escapeSequence ? NO : CFStringFindWithOptions((CFStringRef)tokenString, (CFStringRef)self.escapeSequence, searchRange, 0L, &escapeRange); - while (matchedEndSequence && searchRange.location < inputLength) + while (matchedEndSequence && (NSUInteger)searchRange.location < inputLength) { if (!matchedEscapeSequence || endRange.location < escapeRange.location)//End quote is not escaped by escape sequence. { NSUInteger resultRangeBegin = *tokenPosition; - *tokenPosition = endRange.location + endRange.length; + *tokenPosition = (NSUInteger)(endRange.location + endRange.length); NSUInteger resultRangeLength = *tokenPosition - resultRangeBegin; CFRelease(outputString); return NSMakeRange(resultRangeBegin, resultRangeLength); } else//End quote is escaped by escape sequence { - NSUInteger quotedPosition = escapeRange.location + escapeRange.length; + NSUInteger quotedPosition = (NSUInteger)(escapeRange.location + escapeRange.length); CFRange subStrRange = CFRangeMake(searchRange.location, escapeRange.location + (self.shouldQuoteEscapeSequence ? escapeRange.length : 0) - searchRange.location); CFStringRef substr = CFStringCreateWithSubstring(kCFAllocatorDefault, (CFStringRef)tokenString, subStrRange); @@ -158,8 +115,8 @@ CFRelease(substr); quotedPosition += 1; } - searchRange.length = searchRange.location + searchRange.length - quotedPosition; - searchRange.location = quotedPosition; + searchRange.length = searchRange.location + searchRange.length - (CFIndex)quotedPosition; + searchRange.location = (CFIndex)quotedPosition; if (endRange.location < searchRange.location) { diff --git a/src/extra/FMStatementSplitter/FMStatementTokenRecogniser.h b/src/extra/FMStatementSplitter/FMStatementTokenRecogniser.h index be86796..6cec544 100644 --- a/src/extra/FMStatementSplitter/FMStatementTokenRecogniser.h +++ b/src/extra/FMStatementSplitter/FMStatementTokenRecogniser.h @@ -8,7 +8,7 @@ #import <Foundation/Foundation.h> -@protocol FMStatementTokenRecogniser <NSObject, NSCoding> +@protocol FMStatementTokenRecogniser <NSObject> @required - (NSRange)recogniseRangeWithScanner:(NSScanner *)scanner currentTokenPosition:(NSUInteger *)tokenPosition; |