session-ios/SignalMessaging/categories/NSString+OWS.m
Michael Kirk c7662b5a86 Step 2/2 %s/OWSAssert/OWSAssertDebug for existing previous assert semantics
Going forward, we want to prefer safer asserts, but we don't want to blindly
apply crashing asserts across the codebase
2018-09-07 10:00:48 -06:00

44 lines
957 B
Objective-C

//
// Copyright (c) 2018 Open Whisper Systems. All rights reserved.
//
#import "NSString+OWS.h"
#import "UIView+OWS.h"
#import <SignalServiceKit/AppContext.h>
NS_ASSUME_NONNULL_BEGIN
@implementation NSString (OWS)
- (NSString *)ows_stripped
{
return [self stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
}
- (NSString *)rtlSafeAppend:(NSString *)string
{
OWSAssertDebug(string);
if (CurrentAppContext().isRTL) {
return [string stringByAppendingString:self];
} else {
return [self stringByAppendingString:string];
}
}
- (NSString *)removeAllCharactersIn:(NSCharacterSet *)characterSet
{
OWSAssertDebug(characterSet);
return [[self componentsSeparatedByCharactersInSet:characterSet] componentsJoinedByString:@""];
}
- (NSString *)digitsOnly
{
return [self removeAllCharactersIn:[NSCharacterSet.decimalDigitCharacterSet invertedSet]];
}
@end
NS_ASSUME_NONNULL_END