Skip to content

Commit

Permalink
work
Browse files Browse the repository at this point in the history
  • Loading branch information
Julian Mayer committed Nov 24, 2015
1 parent f6fa6e3 commit 843698d
Show file tree
Hide file tree
Showing 4 changed files with 105 additions and 6 deletions.
5 changes: 4 additions & 1 deletion CoreLib/AppKit+CoreCode.m
Expand Up @@ -122,10 +122,13 @@ - (void)endProgress

[progressIndicator stopAnimation:self];
[NSApp activateIgnoringOtherApps:YES];
if (OS_IS_POST_10_8)
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
if (OS_IS_POST_10_8)
[self endSheet:progressPanel];
else
[NSApp endSheet:progressPanel];
#pragma clang diagnostic pop
[progressPanel orderOut:self];

[self setAssociatedValue:nil forKey:kCCProgressDetailInfoKey];
Expand Down
28 changes: 27 additions & 1 deletion CoreLib/Foundation+CoreCode.h
Expand Up @@ -63,7 +63,7 @@
- (NSString *)joined:(NSString *)sep; // = componentsJoinedByString:

@property (readonly, nonatomic) NSSet <ObjectType> *set;

@property (readonly, nonatomic) NSOrderedSet <ObjectType> *orderedSet;

@end

Expand Down Expand Up @@ -166,6 +166,7 @@
@property (readonly, nonatomic) BOOL isIntegerNumberOnly;
@property (readonly, nonatomic) BOOL isFloatNumber;
@property (readonly, nonatomic) BOOL isValidEmail;
@property (readonly, nonatomic) BOOL isNumber;



Expand Down Expand Up @@ -383,3 +384,28 @@
@property (readonly, nonatomic) NSString *literalString;

@end


@interface NSMutableOrderedSet <ObjectType> (CoreCode)

@property (readonly, nonatomic) NSOrderedSet <ObjectType> *immutableObject;

@end

@interface NSMutableSet <ObjectType> (CoreCode)

@property (readonly, nonatomic) NSSet <ObjectType> *immutableObject;

@end

@interface NSOrderedSet <ObjectType> (CoreCode)

@property (readonly, nonatomic) NSMutableOrderedSet <ObjectType> *mutableObject;

@end

@interface NSSet <ObjectType> (CoreCode)

@property (readonly, nonatomic) NSMutableSet <ObjectType> *mutableObject;

@end
75 changes: 71 additions & 4 deletions CoreLib/Foundation+CoreCode.m
Expand Up @@ -42,7 +42,7 @@

@implementation NSArray (CoreCode)

@dynamic mutableObject, empty, set, reverseArray, string, path, sorted, XMLData, flattenedArray, literalString;
@dynamic mutableObject, empty, set, reverseArray, string, path, sorted, XMLData, flattenedArray, literalString, orderedSet;

- (NSString *)literalString
{
Expand Down Expand Up @@ -200,6 +200,11 @@ - (NSArray *)reverseArray
return [[self reverseObjectEnumerator] allObjects];
}

- (NSOrderedSet *)orderedSet
{
return [NSOrderedSet orderedSetWithArray:self];
}

- (NSSet *)set
{
return [NSSet setWithArray:self];
Expand Down Expand Up @@ -523,7 +528,7 @@ - (void)removeFirstObject

@implementation NSString (CoreCode)

@dynamic words, lines, trimmedOfWhitespace, trimmedOfWhitespaceAndNewlines, URL, fileURL, download, resourceURL, resourcePath, localized, defaultObject, defaultString, defaultInt, defaultFloat, defaultURL, dirContents, dirContentsRecursive, dirContentsAbsolute, dirContentsRecursiveAbsolute, fileExists, uniqueFile, expanded, defaultArray, defaultDict, isWriteablePath, fileSize, directorySize, contents, dataFromHexString, unescaped, escaped, namedImage, isIntegerNumber, isIntegerNumberOnly, isFloatNumber, data, firstCharacter, lastCharacter, fullRange, stringByResolvingSymlinksInPathFixed, literalString;
@dynamic words, lines, trimmedOfWhitespace, trimmedOfWhitespaceAndNewlines, URL, fileURL, download, resourceURL, resourcePath, localized, defaultObject, defaultString, defaultInt, defaultFloat, defaultURL, dirContents, dirContentsRecursive, dirContentsAbsolute, dirContentsRecursiveAbsolute, fileExists, uniqueFile, expanded, defaultArray, defaultDict, isWriteablePath, fileSize, directorySize, contents, dataFromHexString, unescaped, escaped, namedImage, isIntegerNumber, isIntegerNumberOnly, isFloatNumber, data, firstCharacter, lastCharacter, fullRange, stringByResolvingSymlinksInPathFixed, literalString, isNumber;

#if defined(TARGET_OS_MAC) && TARGET_OS_MAC && !TARGET_OS_IPHONE
@dynamic fileIsAlias, fileAliasTarget, fileIsRestricted;
Expand Down Expand Up @@ -678,6 +683,21 @@ - (BOOL)isIntegerNumber
return [self rangeOfCharacterFromSet:[NSCharacterSet decimalDigitCharacterSet]].location != NSNotFound;
}

- (BOOL)isNumber
{
if (!self.length)
return NO;

if (self.isIntegerNumberOnly)
return YES;

if (self.isFloatNumber)
return YES;

return NO;
}


- (BOOL)isIntegerNumberOnly
{
return [self rangeOfCharacterFromSet:[NSCharacterSet decimalDigitCharacterSet].invertedSet].location == NSNotFound;
Expand All @@ -702,8 +722,7 @@ - (BOOL)isFloatNumber
#endif
}

return ([self rangeOfCharacterFromSet:[NSCharacterSet decimalDigitCharacterSet]].location != NSNotFound) &&
([self rangeOfCharacterFromSet:cs].location != NSNotFound);
return ([self rangeOfCharacterFromSet:[NSCharacterSet decimalDigitCharacterSet]].location != NSNotFound) && ([self rangeOfCharacterFromSet:cs].location != NSNotFound);
}

- (BOOL)isWriteablePath
Expand Down Expand Up @@ -2284,4 +2303,52 @@ - (NSString *)literalString
{
return makeString(@"@(%@)", self.description);
}
@end




@implementation NSMutableOrderedSet (CoreCode)

@dynamic immutableObject;

- (NSOrderedSet *)immutableObject
{
return [NSOrderedSet orderedSetWithOrderedSet:self];
}

@end

@implementation NSMutableSet (CoreCode)

@dynamic immutableObject;

- (NSSet *)immutableObject
{
return [NSSet setWithSet:self];
}

@end

@implementation NSOrderedSet (CoreCode)

@dynamic mutableObject;


- (NSMutableOrderedSet *)mutableObject
{
return [NSMutableOrderedSet orderedSetWithOrderedSet:self];
}


@end

@implementation NSSet (CoreCode)

@dynamic mutableObject;

- (NSMutableSet *)mutableObject
{
return [NSMutableSet setWithSet:self];
}
@end
3 changes: 3 additions & 0 deletions Mac/JMCrashReporter.m
Expand Up @@ -96,6 +96,9 @@ void CheckAndReportCrashes(NSString *email, NSArray *neccessaryStrings)
foundNeccessaryString = TRUE;
}

if ([crashlog rangeOfString:@"Crashed Thread"].location == NSNotFound)
foundNeccessaryString = FALSE;

if (!foundNeccessaryString)
{
#if ! __has_feature(objc_arc)
Expand Down

0 comments on commit 843698d

Please sign in to comment.