Author: rfm
Date: Fri May 22 17:34:25 2015
New Revision: 38524

URL: http://svn.gna.org/viewcvs/gnustep?rev=38524&view=rev
Log:
optimisation and compatiblity tweaks

Modified:
    libs/base/trunk/ChangeLog
    libs/base/trunk/Source/NSKeyValueCoding.m
    libs/base/trunk/Source/NSString.m

Modified: libs/base/trunk/ChangeLog
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/ChangeLog?rev=38524&r1=38523&r2=38524&view=diff
==============================================================================
--- libs/base/trunk/ChangeLog   (original)
+++ libs/base/trunk/ChangeLog   Fri May 22 17:34:25 2015
@@ -1,3 +1,10 @@
+2015-05-22  Richard Frith-Macdonald <[email protected]>
+
+       * Source/NSString.m:
+       * Source/GSString.m:
+       Some optimisation.  Fix -hasPrefix: and -hasSuffix: to use literal
+       search as on OSX.
+
 2015-05-15  Richard Frith-Macdonald <[email protected]>
 
        * Documentation/install.texi:

Modified: libs/base/trunk/Source/NSKeyValueCoding.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSKeyValueCoding.m?rev=38524&r1=38523&r2=38524&view=diff
==============================================================================
--- libs/base/trunk/Source/NSKeyValueCoding.m   (original)
+++ libs/base/trunk/Source/NSKeyValueCoding.m   Fri May 22 17:34:25 2015
@@ -287,7 +287,7 @@
 
 - (NSMutableSet*) mutableSetValueForKeyPath: (NSString*)aKey
 {
-  NSRange       r = [aKey rangeOfString: @"."];
+  NSRange       r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 
   if (r.length == 0)
     {
@@ -309,7 +309,7 @@
 
 - (NSMutableArray*) mutableArrayValueForKeyPath: (NSString*)aKey
 {
-  NSRange       r = [aKey rangeOfString: @"."];
+  NSRange       r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 
   if (r.length == 0)
     {
@@ -373,7 +373,7 @@
 
 - (void) setValue: (id)anObject forKeyPath: (NSString*)aKey
 {
-  NSRange       r = [aKey rangeOfString: @"."];
+  NSRange       r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 #ifdef WANT_DEPRECATED_KVC_COMPAT
   IMP          o = [self methodForSelector: @selector(takeValue:forKeyPath:)];
 
@@ -499,7 +499,7 @@
             forKeyPath: (NSString*)aKey
                  error: (NSError**)anError
 {
-  NSRange       r = [aKey rangeOfString: @"."];
+  NSRange       r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 
   if (r.length == 0)
     {
@@ -532,7 +532,7 @@
 
 - (id) valueForKeyPath: (NSString*)aKey
 {
-  NSRange       r = [aKey rangeOfString: @"."];
+  NSRange       r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 
   if (r.length == 0)
     {
@@ -858,7 +858,7 @@
 
 - (void) takeValue: (id)anObject forKeyPath: (NSString*)aKey
 {
-  NSRange      r = [aKey rangeOfString: @"."];
+  NSRange      r = [aKey rangeOfString: @"." options: NSLiteralSearch];
 
   GSOnceMLog(@"This method is deprecated, use -setValue:forKeyPath:");
   if (r.length == 0)

Modified: libs/base/trunk/Source/NSString.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/base/trunk/Source/NSString.m?rev=38524&r1=38523&r2=38524&view=diff
==============================================================================
--- libs/base/trunk/Source/NSString.m   (original)
+++ libs/base/trunk/Source/NSString.m   Fri May 22 17:34:25 2015
@@ -2532,7 +2532,7 @@
 }
 
 - (NSUInteger) indexOfString: (NSString*)substring
-                    fromIndex: (NSUInteger)index
+                   fromIndex: (NSUInteger)index
 {
   NSRange range = {index, [self length] - index};
 
@@ -2638,9 +2638,10 @@
 - (BOOL) hasPrefix: (NSString*)aString
 {
   NSRange      range = NSMakeRange(0, [self length]);
+  NSUInteger    mask = NSLiteralSearch | NSAnchoredSearch;
 
   range = [self rangeOfString: aString
-                      options: NSAnchoredSearch
+                      options: mask
                         range: range
                        locale: nil];
   return (range.length > 0) ? YES : NO;
@@ -2652,9 +2653,10 @@
 - (BOOL) hasSuffix: (NSString*)aString
 {
   NSRange      range = NSMakeRange(0, [self length]);
+  NSUInteger    mask = NSLiteralSearch | NSAnchoredSearch | NSBackwardsSearch;
 
   range = [self rangeOfString: aString
-                      options: NSAnchoredSearch | NSBackwardsSearch
+                      options: mask
                         range: range
                        locale: nil];
   return (range.length > 0) ? YES : NO;


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to