home *** CD-ROM | disk | FTP | other *** search
/ OpenStep 4.2 / Openstep-4.2-Intel-Developer.iso / NextLibrary / Frameworks / Foundation.framework / Versions / B / Headers / NSArray.h < prev    next >
Encoding:
Text File  |  1996-10-25  |  3.9 KB  |  113 lines

  1. /*    NSArray.h
  2.     Basic dynamic array
  3.     Copyright 1994-1996, NeXT Software, Inc.  All rights reserved.
  4. */
  5.  
  6. #import <Foundation/NSObject.h>
  7. #import <Foundation/NSRange.h>
  8.  
  9. @class NSData, NSDictionary, NSEnumerator, NSString;
  10.  
  11. /****************    Immutable Array        ****************/
  12.  
  13. @interface NSArray : NSObject <NSCopying, NSMutableCopying, NSCoding>
  14.  
  15. - (unsigned)count;
  16. - (id)objectAtIndex:(unsigned)index;
  17.     
  18. @end
  19.  
  20. @interface NSArray (NSExtendedArray)
  21.  
  22. - (NSArray *)arrayByAddingObject:(id)anObject;
  23. - (NSArray *)arrayByAddingObjectsFromArray:(NSArray *)otherArray;
  24. - (NSString *)componentsJoinedByString:(NSString *)separator;
  25. - (BOOL)containsObject:(id)anObject;
  26. - (NSString *)description;
  27. - (NSString *)descriptionWithLocale:(NSDictionary *)locale;
  28. - (NSString *)descriptionWithLocale:(NSDictionary *)locale indent:(unsigned)level;
  29. - (id)firstObjectCommonWithArray:(NSArray *)otherArray;
  30. - (void)getObjects:(id *)objects;
  31. - (void)getObjects:(id *)objects range:(NSRange)range;
  32. - (unsigned)indexOfObject:(id)anObject;
  33. - (unsigned)indexOfObject:(id)anObject inRange:(NSRange)range;
  34. - (unsigned)indexOfObjectIdenticalTo:(id)anObject;
  35. - (unsigned)indexOfObjectIdenticalTo:(id)anObject inRange:(NSRange)range;
  36. - (BOOL)isEqualToArray:(NSArray *)otherArray;
  37. - (id)lastObject;
  38. - (NSEnumerator *)objectEnumerator;
  39. - (NSEnumerator *)reverseObjectEnumerator;
  40. - (NSData *)sortedArrayHint;
  41. - (NSArray *)sortedArrayUsingFunction:(int (*)(id, id, void *))comparator context:(void *)context;
  42. - (NSArray *)sortedArrayUsingFunction:(int (*)(id, id, void *))comparator context:(void *)context hint:(NSData *)hint;
  43. - (NSArray *)sortedArrayUsingSelector:(SEL)comparator;
  44. - (NSArray *)subarrayWithRange:(NSRange)range;
  45. - (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;
  46.  
  47. - (void)makeObjectsPerform:(SEL)aSelector;                /* OBSOLETE */
  48. - (void)makeObjectsPerform:(SEL)aSelector withObject:(id)argument;    /* OBSOLETE */
  49.  
  50. #if !defined(STRICT_OPENSTEP)
  51. - (void)makeObjectsPerformSelector:(SEL)aSelector;
  52. - (void)makeObjectsPerformSelector:(SEL)aSelector withObject:(id)argument;
  53. #endif /* !STRICT_OPENSTEP */
  54.  
  55. @end
  56.  
  57. @interface NSArray (NSArrayCreation)
  58.  
  59. + (id)array;
  60. + (id)arrayWithContentsOfFile:(NSString *)path;
  61. + (id)arrayWithObject:(id)anObject;
  62. + (id)arrayWithObjects:(id)firstObj, ...;
  63. - (id)initWithArray:(NSArray *)array;
  64. - (id)initWithContentsOfFile:(NSString *)path;
  65. - (id)initWithObjects:(id *)objects count:(unsigned)count;
  66. - (id)initWithObjects:(id)firstObj, ...;
  67.  
  68. #if !defined(STRICT_OPENSTEP)
  69. + (id)arrayWithArray:(NSArray *)array;
  70. + (id)arrayWithObjects:(id *)objs count:(unsigned)cnt;
  71. #endif /* !STRICT_OPENSTEP */
  72.  
  73. @end
  74.  
  75. /****************    Mutable Array        ****************/
  76.  
  77. @interface NSMutableArray : NSArray
  78.  
  79. - (void)addObject:(id)anObject;
  80. - (void)insertObject:(id)anObject atIndex:(unsigned)index;
  81. - (void)removeLastObject;
  82. - (void)removeObjectAtIndex:(unsigned)index;
  83. - (void)replaceObjectAtIndex:(unsigned)index withObject:(id)anObject;
  84.  
  85. @end
  86.  
  87. @interface NSMutableArray (NSExtendedMutableArray)
  88.     
  89. - (void)addObjectsFromArray:(NSArray *)otherArray;
  90. - (void)removeAllObjects;
  91. - (void)removeObject:(id)anObject inRange:(NSRange)range;
  92. - (void)removeObject:(id)anObject;
  93. - (void)removeObjectIdenticalTo:(id)anObject inRange:(NSRange)range;
  94. - (void)removeObjectIdenticalTo:(id)anObject;
  95. - (void)removeObjectsFromIndices:(unsigned *)indices numIndices:(unsigned)count;
  96. - (void)removeObjectsInArray:(NSArray *)otherArray;
  97. - (void)removeObjectsInRange:(NSRange)range;
  98. - (void)replaceObjectsInRange:(NSRange)range withObjectsFromArray:(NSArray *)otherArray range:(NSRange)otherRange;
  99. - (void)replaceObjectsInRange:(NSRange)range withObjectsFromArray:(NSArray *)otherArray;
  100. - (void)setArray:(NSArray *)otherArray;
  101. - (void)sortUsingFunction:(int (*)(id, id, void *))compare context:(void *)context;
  102. - (void)sortUsingSelector:(SEL)comparator;
  103.  
  104. @end
  105.  
  106. @interface NSMutableArray (NSMutableArrayCreation)
  107.  
  108. + (id)arrayWithCapacity:(unsigned)numItems;
  109. - (id)initWithCapacity:(unsigned)numItems;
  110.  
  111. @end
  112.  
  113.