CFBitVector and its derived mutable type, CFMutableBitVector, manage ordered collections of bit values, which are either 0 or 1. CFBitVector creates static bit vectors and CFMutableBitVector creates dynamic bit vectors.


Creating a Bit Vector

func CFBitVectorCreate(CFAllocator!, UnsafePointer<UInt8>!, CFIndex)

Creates an immutable bit vector from a block of memory.

func CFBitVectorCreateCopy(CFAllocator!, CFBitVector!)

Creates an immutable bit vector that is a copy of another bit vector.

Getting Information About a Bit Vector

func CFBitVectorContainsBit(CFBitVector!, CFRange, CFBit)

Returns whether a bit vector contains a particular bit value.

func CFBitVectorGetBitAtIndex(CFBitVector!, CFIndex)

Returns the bit value at a given index in a bit vector.

func CFBitVectorGetBits(CFBitVector!, CFRange, UnsafeMutablePointer<UInt8>!)

Returns the bit values in a range of indices in a bit vector.

func CFBitVectorGetCount(CFBitVector!)

Returns the number of bit values in a bit vector.

func CFBitVectorGetCountOfBit(CFBitVector!, CFRange, CFBit)

Counts the number of times a certain bit value occurs within a range of bits in a bit vector.

func CFBitVectorGetFirstIndexOfBit(CFBitVector!, CFRange, CFBit)

Locates the first occurrence of a certain bit value within a range of bits in a bit vector.

func CFBitVectorGetLastIndexOfBit(CFBitVector!, CFRange, CFBit)

Locates the last occurrence of a certain bit value within a range of bits in a bit vector.

Getting the CFBitVector Type ID

func CFBitVectorGetTypeID()

Returns the type identifier for the CFBitVector opaque type.

Data Types

typealias CFBit

A binary value of either 0 or 1.

class CFBitVector

A reference to an immutable bit vector object.

See Also

Opaque Types


The CFFileDescriptor provides an opaque type to monitor file descriptors for read and write activity via CFRunLoop.


CFStringTokenizer allows you to tokenize strings into words, sentences or paragraphs in a language-neutral way. It supports languages such as Japanese and Chinese that do not delimit words by spaces, as well as de-compounding German compounds. You can obtain Latin transcription for tokens. It also provides language identification API.