00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00032 #ifndef _CONS_H_
00033 #define _CONS_H_
00034
00035 #include <objc/Object.h>
00036
00039 @interface Cons: Object {
00040 id first;
00041 id rest;
00042 }
00043
00049 +(void) appendTo: (Cons**) pcons item: (id) o;
00050
00052 -(void) append: (id) o;
00053
00058 -(void) appendList: (Cons*) o;
00059
00062 -(id) first;
00063
00066 -(id) rest;
00067
00070 -(void) setFirst: (id) o;
00071
00074 -(void) setRest: (id) o;
00075
00078 -(id) car;
00081 -(id) cdr;
00082
00083
00086 -(id*) pcar;
00089 -(id*) pcdr;
00090
00093 -(id*) pfirst;
00096 -(id*) prest;
00097
00101 -(void) nilCars;
00102
00103
00106 -(void) setCar: (id) o;
00109 -(void) setCdr: (id) o;
00110
00113 -(BOOL) areMembersOf: (Class) c;
00114
00117 -(BOOL) areKindsOf: (Class) c;
00118
00125 -(id) stealCar;
00126
00127
00134 -(id) stealCdr;
00135
00138 -(int) size;
00139 @end
00140
00143 Cons *cons( id f, id r);
00144
00147 void push( Cons **c, id val);
00148
00149
00150 #endif