Revision control
Copy as Markdown
Other Tools
// Copyright 2019 The Servo Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// option. This file may not be copied, modified, or distributed
// except according to those terms.
use crate::base::{Boolean, CFAllocatorRef, CFIndex, CFRange, CFTypeID, UTF32Char};
use crate::data::CFDataRef;
use crate::string::{CFStringRef, UniChar};
use std::os::raw::c_void;
pub type CFCharacterSetPredefinedSet = CFIndex;
// Members of CFCharacterSetPredefinedSet enum
pub static kCFCharacterSetControl: CFCharacterSetPredefinedSet = 1;
pub static kCFCharacterSetWhitespace: CFCharacterSetPredefinedSet = 2;
pub static kCFCharacterSetWhitespaceAndNewline: CFCharacterSetPredefinedSet = 3;
pub static kCFCharacterSetDecimalDigit: CFCharacterSetPredefinedSet = 4;
pub static kCFCharacterSetLetter: CFCharacterSetPredefinedSet = 5;
pub static kCFCharacterSetLowercaseLetter: CFCharacterSetPredefinedSet = 6;
pub static kCFCharacterSetUppercaseLetter: CFCharacterSetPredefinedSet = 7;
pub static kCFCharacterSetNonBase: CFCharacterSetPredefinedSet = 8;
pub static kCFCharacterSetDecomposable: CFCharacterSetPredefinedSet = 9;
pub static kCFCharacterSetAlphaNumeric: CFCharacterSetPredefinedSet = 10;
pub static kCFCharacterSetPunctuation: CFCharacterSetPredefinedSet = 11;
pub static kCFCharacterSetIllegal: CFCharacterSetPredefinedSet = 12;
pub static kCFCharacterSetCapitalizedLetter: CFCharacterSetPredefinedSet = 13;
pub static kCFCharacterSetSymbol: CFCharacterSetPredefinedSet = 14;
pub static kCFCharacterSetNewline: CFCharacterSetPredefinedSet = 15;
#[repr(C)]
pub struct __CFCharacterSet(c_void);
pub type CFCharacterSetRef = *const __CFCharacterSet;
pub type CFMutableCharacterSetRef = *mut __CFCharacterSet;
extern "C" {
/*
* CFCharacterSet.h
*/
/* CFCharacterSet */
/* Creating Character Sets */
pub fn CFCharacterSetCreateCopy(
alloc: CFAllocatorRef,
theSet: CFCharacterSetRef,
) -> CFCharacterSetRef;
pub fn CFCharacterSetCreateInvertedSet(
alloc: CFAllocatorRef,
theSet: CFCharacterSetRef,
) -> CFCharacterSetRef;
pub fn CFCharacterSetCreateWithCharactersInRange(
alloc: CFAllocatorRef,
theRange: CFRange,
) -> CFCharacterSetRef;
pub fn CFCharacterSetCreateWithCharactersInString(
alloc: CFAllocatorRef,
theString: CFStringRef,
) -> CFCharacterSetRef;
pub fn CFCharacterSetCreateWithBitmapRepresentation(
alloc: CFAllocatorRef,
theData: CFDataRef,
) -> CFCharacterSetRef;
/* Getting Predefined Character Sets */
pub fn CFCharacterSetGetPredefined(
theSetIdentifier: CFCharacterSetPredefinedSet,
) -> CFCharacterSetRef;
/* Querying Character Sets */
pub fn CFCharacterSetCreateBitmapRepresentation(
alloc: CFAllocatorRef,
theSet: CFCharacterSetRef,
) -> CFDataRef;
pub fn CFCharacterSetHasMemberInPlane(theSet: CFCharacterSetRef, thePlane: CFIndex) -> Boolean;
pub fn CFCharacterSetIsCharacterMember(theSet: CFCharacterSetRef, theChar: UniChar) -> Boolean;
pub fn CFCharacterSetIsLongCharacterMember(
theSet: CFCharacterSetRef,
theChar: UTF32Char,
) -> Boolean;
pub fn CFCharacterSetIsSupersetOfSet(
theSet: CFCharacterSetRef,
theOtherset: CFCharacterSetRef,
) -> Boolean;
/* Getting the Character Set Type Identifier */
pub fn CFCharacterSetGetTypeID() -> CFTypeID;
/* CFMutableCharacterSet */
/* Creating a Mutable Character Set */
pub fn CFCharacterSetCreateMutable(alloc: CFAllocatorRef) -> CFMutableCharacterSetRef;
pub fn CFCharacterSetCreateMutableCopy(
alloc: CFAllocatorRef,
theSet: CFCharacterSetRef,
) -> CFMutableCharacterSetRef;
/* Adding Characters */
pub fn CFCharacterSetAddCharactersInRange(theSet: CFMutableCharacterSetRef, theRange: CFRange);
pub fn CFCharacterSetAddCharactersInString(
theSet: CFMutableCharacterSetRef,
theString: CFStringRef,
);
/* Removing Characters */
pub fn CFCharacterSetRemoveCharactersInRange(
theSet: CFMutableCharacterSetRef,
theRange: CFRange,
);
pub fn CFCharacterSetRemoveCharactersInString(
theSet: CFMutableCharacterSetRef,
theString: CFStringRef,
);
/* Logical Operations */
pub fn CFCharacterSetIntersect(
theSet: CFMutableCharacterSetRef,
theOtherSet: CFCharacterSetRef,
);
pub fn CFCharacterSetInvert(theSet: CFMutableCharacterSetRef);
pub fn CFCharacterSetUnion(theSet: CFMutableCharacterSetRef, theOtherSet: CFCharacterSetRef);
}