diff options
Diffstat (limited to 'NSArray+LispExtensions.m')
-rw-r--r-- | NSArray+LispExtensions.m | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/NSArray+LispExtensions.m b/NSArray+LispExtensions.m new file mode 100644 index 0000000..308516e --- /dev/null +++ b/NSArray+LispExtensions.m @@ -0,0 +1,36 @@ +// +// NSArray+LispExtensions.m +// Moxie +// +// Created by Brian Cully on Tue Sep 07 2004. +// Copyright (c) 2004 Brian Cully. All rights reserved. +// + +#import "NSArray+LispExtensions.h" + +@implementation NSArray (LispExtensions) +- (NSString *)lispForm +{ + NSEnumerator *objectEnum; + NSMutableString *result; + id obj; + + if ([self count] == 0) + return @"NIL"; + + objectEnum = [self objectEnumerator]; + result = [NSMutableString stringWithString: @"("]; + obj = [objectEnum nextObject]; + while (obj != nil) { + NSString *form; + + form = [obj lispForm]; + [result appendString: form]; + obj = [objectEnum nextObject]; + if (obj) + [result appendString: @" "]; + } + [result appendString: @")"]; + return result; +} +@end
\ No newline at end of file |