ftp.nice.ch/pub/next/developer/languages/c/gcc.2.7.2.2.I.b.tar.gz#/lib/gcc-lib/m68k-next-nextstep3/2.7.2.2.f.2/include/btree/IXPostingSet.h

This is IXPostingSet.h in view mode; [Download] [Up]

/*
IXPostingSet.h
Copyright 1991,NeXT Computer,Inc.
*/

#import	<objc/Object.h>
#import "protocols.h"

/* This class implements a dynamic array of postings, sorted by handle.  Its */
/* primary use is for combining sets of postings - i.e., performing set union, */
/* intersection and subtraction.*/

#ifdef	NX_COMPILER_RELEASE_3_0
#import <remote/transport.h>
typedef id <IXPostingExchange> IXPostingExchangeType;
@interface IXPostingSet: Object <NXTransport, IXPostingExchange, IXPostingOperations>
#else
typedef id IXPostingExchangeType;
@interface IXPostingSet: Object
#endif
{
@public
    unsigned		thisElement;
    unsigned 		numElements;
    unsigned 		maxElements;
    struct IXPosting	*postings;
}

/* These two methods initialize the posting set with existing postings.  The*/
/* first method takes the postings from an object that conforms to the posting */
/* exchange protocol.  The second one takes the postings from the caller.*/

- initWithPostingsIn:(IXPostingExchangeType)anObject;
- initCount:(unsigned)theCount andPostings:(const IXPosting *)thePostings;

/* These methods perform set union, intersection and subtraction between the */
/* posting set and an object that conforms to the posting exchange protocol, */
/* leaving the result in the posting set.  These are commonly used to refine or */
/* expand query results on a posting cursor.*/

- formUnionWithPostingsIn:(IXPostingExchangeType)anObject;
- formIntersectionWithPostingsIn:(IXPostingExchangeType)anObject;
- subtractPostingsIn:(IXPostingExchangeType)anObject;

/* This method sets the posting set to a specific position or element.  The */
/* numbering starts with zero.  The count is returned by the count method.*/

- (unsigned)setPosition:(unsigned)aPosition;

- setCount:(unsigned)theCount /* sets the postings without copying.*/
    andPostings:(IXPosting *)thePostings byCopy:(BOOL)aBoolean;

/* The posting set can be archived to and unarchived from a typed stream.  It */
/* can also be passed between processes using the distributed object substrate.*/

- read:(NXTypedStream *)typedStream;
- write:(NXTypedStream *)typedStream;

@end

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.