summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--GNUmakefile4
-rw-r--r--MLKCons.h2
-rw-r--r--MLKCons.m8
3 files changed, 12 insertions, 2 deletions
diff --git a/GNUmakefile b/GNUmakefile
index 22398e9..13a7c6c 100644
--- a/GNUmakefile
+++ b/GNUmakefile
@@ -27,8 +27,8 @@ BUNDLE_NAME = Test
ADDITIONAL_OBJCFLAGS = -Wall
-ToiletKit_OBJC_FILES = MLKCharacter.m MLKCons.m MLKBackquoteReader.m \
- MLKBinding.m MLKCommaReader.m MLKDoubleFloat.m \
+ToiletKit_OBJC_FILES = MLKBackquoteReader.m MLKBinding.m MLKCharacter.m \
+ MLKCommaReader.m MLKCons.m MLKDoubleFloat.m \
MLKDynamicContext.m MLKEnvironment.m MLKFloat.m \
MLKInteger.m MLKInterpretedClosure.m \
MLKInterpreter.m MLKLinkedList.m \
diff --git a/MLKCons.h b/MLKCons.h
index 739fb40..55f47c1 100644
--- a/MLKCons.h
+++ b/MLKCons.h
@@ -44,5 +44,7 @@
// only
-(NSString *)descriptionForLisp;
+-(id) copyWithZone:(NSZone *)zone;
+
-(void) dealloc;
@end
diff --git a/MLKCons.m b/MLKCons.m
index 8b3084b..c557dc2 100644
--- a/MLKCons.m
+++ b/MLKCons.m
@@ -128,6 +128,14 @@
return [NSString stringWithFormat:@"(%@)", [self bareDescriptionForLisp]];
}
+-(id) copyWithZone:(NSZone *)zone
+{
+ MLKCons *copy = [MLKCons allocWithZone:zone];
+ ASSIGN (copy->_car, _car);
+ ASSIGN (copy->_cdr, _cdr);
+ return copy;
+}
+
-(void) dealloc
{
RELEASE (_car);