Vendor things
This commit is contained in:
parent
5deceec006
commit
977e3c17e5
19434 changed files with 10682014 additions and 0 deletions
1
third-party/vendor/fsevent-sys/.cargo-checksum.json
vendored
Normal file
1
third-party/vendor/fsevent-sys/.cargo-checksum.json
vendored
Normal file
|
|
@ -0,0 +1 @@
|
|||
{"files":{"Cargo.toml":"de02da7a5e4e48b9efd8d5d03e26e7ed86b04e9a91396b2a3e89bebf8fb39a78","LICENSE":"c4d64f0ce17c85d4a14e22d224fbbd76dbb1e03eb38f0d3c209fb38bdc8dc646","src/core_foundation.rs":"94e10b202d8d74b01d12068bd30bb080dc35705114e17342c8ce46eba6b51f4e","src/fsevent.rs":"00508ec4de5e3ff3b2266d30000991273e4d3200409cc81449b94f100f02933e","src/lib.rs":"cdf97755f6dde15f9bae450c51be7d573c0dad0519bebad16796bbd2a3467537"},"package":"76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2"}
|
||||
24
third-party/vendor/fsevent-sys/Cargo.toml
vendored
Normal file
24
third-party/vendor/fsevent-sys/Cargo.toml
vendored
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
|
||||
#
|
||||
# When uploading crates to the registry Cargo will automatically
|
||||
# "normalize" Cargo.toml files for maximal compatibility
|
||||
# with all versions of Cargo and also rewrite `path` dependencies
|
||||
# to registry (e.g., crates.io) dependencies
|
||||
#
|
||||
# If you believe there's an error in this file please file an
|
||||
# issue against the rust-lang/cargo repository. If you're
|
||||
# editing this file be aware that the upstream Cargo.toml
|
||||
# will likely look very different (and much more reasonable)
|
||||
|
||||
[package]
|
||||
edition = "2018"
|
||||
name = "fsevent-sys"
|
||||
version = "4.1.0"
|
||||
authors = ["Pierre Baillet <pierre@baillet.name>"]
|
||||
description = "Rust bindings to the fsevent macOS API for file changes notifications"
|
||||
license = "MIT"
|
||||
repository = "https://github.com/octplane/fsevent-rust/tree/master/fsevent-sys"
|
||||
[package.metadata.docs.rs]
|
||||
targets = ["x86_64-apple-darwin"]
|
||||
[dependencies.libc]
|
||||
version = "0.2.68"
|
||||
22
third-party/vendor/fsevent-sys/LICENSE
vendored
Normal file
22
third-party/vendor/fsevent-sys/LICENSE
vendored
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
The MIT License (MIT)
|
||||
|
||||
Copyright (c) 2015 Pierre Baillet
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
230
third-party/vendor/fsevent-sys/src/core_foundation.rs
vendored
Normal file
230
third-party/vendor/fsevent-sys/src/core_foundation.rs
vendored
Normal file
|
|
@ -0,0 +1,230 @@
|
|||
#![allow(non_upper_case_globals, non_camel_case_types)]
|
||||
|
||||
extern crate libc;
|
||||
|
||||
use std::ffi::CString;
|
||||
use std::ptr;
|
||||
use std::str;
|
||||
|
||||
pub type Boolean = ::std::os::raw::c_uchar;
|
||||
|
||||
pub type CFRef = *mut ::std::os::raw::c_void;
|
||||
|
||||
pub type CFIndex = ::std::os::raw::c_long;
|
||||
pub type CFTimeInterval = f64;
|
||||
pub type CFAbsoluteTime = CFTimeInterval;
|
||||
|
||||
#[doc(hidden)]
|
||||
pub enum CFError {}
|
||||
|
||||
pub type CFAllocatorRef = CFRef;
|
||||
pub type CFArrayRef = CFRef;
|
||||
pub type CFMutableArrayRef = CFRef;
|
||||
pub type CFURLRef = CFRef;
|
||||
pub type CFErrorRef = *mut CFError;
|
||||
pub type CFStringRef = CFRef;
|
||||
pub type CFRunLoopRef = CFRef;
|
||||
|
||||
pub const NULL: CFRef = 0 as CFRef;
|
||||
pub const NULL_REF_PTR: *mut CFRef = 0 as *mut CFRef;
|
||||
|
||||
pub type CFAllocatorRetainCallBack =
|
||||
extern "C" fn(*const ::std::os::raw::c_void) -> *const ::std::os::raw::c_void;
|
||||
pub type CFAllocatorReleaseCallBack = extern "C" fn(*const ::std::os::raw::c_void);
|
||||
pub type CFAllocatorCopyDescriptionCallBack =
|
||||
extern "C" fn(*const ::std::os::raw::c_void) -> *const CFStringRef;
|
||||
|
||||
pub type CFURLPathStyle = CFIndex;
|
||||
|
||||
pub const kCFAllocatorDefault: CFAllocatorRef = NULL;
|
||||
pub const kCFURLPOSIXPathStyle: CFURLPathStyle = 0;
|
||||
pub const kCFURLHFSPathStyle: CFURLPathStyle = 1;
|
||||
pub const kCFURLWindowsPathStyle: CFURLPathStyle = 2;
|
||||
|
||||
pub const kCFStringEncodingUTF8: CFStringEncoding = 0x08000100;
|
||||
pub type CFStringEncoding = u32;
|
||||
|
||||
pub const kCFCompareEqualTo: CFIndex = 0;
|
||||
pub type CFComparisonResult = CFIndex;
|
||||
|
||||
// MacOS uses Case Insensitive path
|
||||
pub const kCFCompareCaseInsensitive: CFStringCompareFlags = 1;
|
||||
pub type CFStringCompareFlags = ::std::os::raw::c_ulong;
|
||||
|
||||
pub type CFArrayRetainCallBack =
|
||||
extern "C" fn(CFAllocatorRef, *const ::std::os::raw::c_void) -> *const ::std::os::raw::c_void;
|
||||
pub type CFArrayReleaseCallBack = extern "C" fn(CFAllocatorRef, *const ::std::os::raw::c_void);
|
||||
pub type CFArrayCopyDescriptionCallBack =
|
||||
extern "C" fn(*const ::std::os::raw::c_void) -> CFStringRef;
|
||||
pub type CFArrayEqualCallBack =
|
||||
extern "C" fn(*const ::std::os::raw::c_void, *const ::std::os::raw::c_void) -> Boolean;
|
||||
|
||||
#[repr(C)]
|
||||
pub struct CFArrayCallBacks {
|
||||
version: CFIndex,
|
||||
retain: Option<CFArrayRetainCallBack>,
|
||||
release: Option<CFArrayReleaseCallBack>,
|
||||
cp: Option<CFArrayCopyDescriptionCallBack>,
|
||||
equal: Option<CFArrayEqualCallBack>,
|
||||
}
|
||||
//impl Clone for CFArrayCallBacks { }
|
||||
|
||||
#[link(name = "CoreFoundation", kind = "framework")]
|
||||
extern "C" {
|
||||
pub static kCFTypeArrayCallBacks: CFArrayCallBacks;
|
||||
pub static kCFRunLoopDefaultMode: CFStringRef;
|
||||
|
||||
pub fn CFRelease(res: CFRef);
|
||||
pub fn CFShow(res: CFRef);
|
||||
pub fn CFCopyDescription(cf: CFRef) -> CFStringRef;
|
||||
|
||||
pub fn CFRunLoopRun();
|
||||
pub fn CFRunLoopStop(run_loop: CFRunLoopRef);
|
||||
pub fn CFRunLoopGetCurrent() -> CFRunLoopRef;
|
||||
|
||||
pub fn CFArrayCreateMutable(
|
||||
allocator: CFRef,
|
||||
capacity: CFIndex,
|
||||
callbacks: *const CFArrayCallBacks,
|
||||
) -> CFMutableArrayRef;
|
||||
pub fn CFArrayInsertValueAtIndex(arr: CFMutableArrayRef, position: CFIndex, element: CFRef);
|
||||
pub fn CFArrayAppendValue(aff: CFMutableArrayRef, element: CFRef);
|
||||
pub fn CFArrayGetCount(arr: CFMutableArrayRef) -> CFIndex;
|
||||
pub fn CFArrayGetValueAtIndex(arr: CFMutableArrayRef, index: CFIndex) -> CFRef;
|
||||
|
||||
pub fn CFURLCreateFileReferenceURL(
|
||||
allocator: CFRef,
|
||||
url: CFURLRef,
|
||||
err: *mut CFErrorRef,
|
||||
) -> CFURLRef;
|
||||
pub fn CFURLCreateFilePathURL(
|
||||
allocator: CFRef,
|
||||
url: CFURLRef,
|
||||
err: *mut CFErrorRef,
|
||||
) -> CFURLRef;
|
||||
pub fn CFURLCreateFromFileSystemRepresentation(
|
||||
allocator: CFRef,
|
||||
path: *const ::std::os::raw::c_char,
|
||||
len: CFIndex,
|
||||
is_directory: bool,
|
||||
) -> CFURLRef;
|
||||
pub fn CFURLCopyAbsoluteURL(res: CFURLRef) -> CFURLRef;
|
||||
pub fn CFURLCopyLastPathComponent(res: CFURLRef) -> CFStringRef;
|
||||
pub fn CFURLCreateCopyDeletingLastPathComponent(allocator: CFRef, url: CFURLRef) -> CFURLRef;
|
||||
pub fn CFURLCreateCopyAppendingPathComponent(
|
||||
allocation: CFRef,
|
||||
url: CFURLRef,
|
||||
path: CFStringRef,
|
||||
is_directory: bool,
|
||||
) -> CFURLRef;
|
||||
pub fn CFURLCopyFileSystemPath(anUrl: CFURLRef, path_style: CFURLPathStyle) -> CFStringRef;
|
||||
|
||||
pub fn CFURLResourceIsReachable(res: CFURLRef, err: *mut CFErrorRef) -> bool;
|
||||
|
||||
pub fn CFShowStr(str: CFStringRef);
|
||||
pub fn CFStringGetCString(
|
||||
theString: CFStringRef,
|
||||
buffer: *mut ::std::os::raw::c_char,
|
||||
buffer_size: CFIndex,
|
||||
encoding: CFStringEncoding,
|
||||
) -> bool;
|
||||
pub fn CFStringGetCStringPtr(
|
||||
theString: CFStringRef,
|
||||
encoding: CFStringEncoding,
|
||||
) -> *const ::std::os::raw::c_char;
|
||||
pub fn CFStringCreateWithCString(
|
||||
alloc: CFRef,
|
||||
source: *const ::std::os::raw::c_char,
|
||||
encoding: CFStringEncoding,
|
||||
) -> CFStringRef;
|
||||
|
||||
pub fn CFStringCompare(
|
||||
theString1: CFStringRef,
|
||||
theString2: CFStringRef,
|
||||
compareOptions: CFStringCompareFlags,
|
||||
) -> CFComparisonResult;
|
||||
pub fn CFArrayRemoveValueAtIndex(theArray: CFMutableArrayRef, idx: CFIndex);
|
||||
}
|
||||
|
||||
pub unsafe fn str_path_to_cfstring_ref(source: &str, err: &mut CFErrorRef) -> CFStringRef {
|
||||
let c_path = CString::new(source).unwrap();
|
||||
let c_len = libc::strlen(c_path.as_ptr());
|
||||
let mut url = CFURLCreateFromFileSystemRepresentation(
|
||||
kCFAllocatorDefault,
|
||||
c_path.as_ptr(),
|
||||
c_len as CFIndex,
|
||||
false,
|
||||
);
|
||||
if url.is_null() {
|
||||
return ptr::null_mut();
|
||||
}
|
||||
|
||||
let mut placeholder = CFURLCopyAbsoluteURL(url);
|
||||
CFRelease(url);
|
||||
if placeholder.is_null() {
|
||||
return ptr::null_mut();
|
||||
}
|
||||
|
||||
let mut imaginary: CFRef = ptr::null_mut();
|
||||
|
||||
while !CFURLResourceIsReachable(placeholder, ptr::null_mut()) {
|
||||
if imaginary.is_null() {
|
||||
imaginary = CFArrayCreateMutable(kCFAllocatorDefault, 0, &kCFTypeArrayCallBacks);
|
||||
if imaginary.is_null() {
|
||||
CFRelease(placeholder);
|
||||
return ptr::null_mut();
|
||||
}
|
||||
}
|
||||
|
||||
let child = CFURLCopyLastPathComponent(placeholder);
|
||||
CFArrayInsertValueAtIndex(imaginary, 0, child);
|
||||
CFRelease(child);
|
||||
|
||||
url = CFURLCreateCopyDeletingLastPathComponent(kCFAllocatorDefault, placeholder);
|
||||
CFRelease(placeholder);
|
||||
placeholder = url;
|
||||
}
|
||||
|
||||
url = CFURLCreateFileReferenceURL(kCFAllocatorDefault, placeholder, err);
|
||||
CFRelease(placeholder);
|
||||
if url.is_null() {
|
||||
if !imaginary.is_null() {
|
||||
CFRelease(imaginary);
|
||||
}
|
||||
return ptr::null_mut();
|
||||
}
|
||||
|
||||
placeholder = CFURLCreateFilePathURL(kCFAllocatorDefault, url, err);
|
||||
CFRelease(url);
|
||||
if placeholder.is_null() {
|
||||
if !imaginary.is_null() {
|
||||
CFRelease(imaginary);
|
||||
}
|
||||
return ptr::null_mut();
|
||||
}
|
||||
|
||||
if !imaginary.is_null() {
|
||||
let mut count = 0;
|
||||
while count < CFArrayGetCount(imaginary) {
|
||||
let component = CFArrayGetValueAtIndex(imaginary, count);
|
||||
url = CFURLCreateCopyAppendingPathComponent(
|
||||
kCFAllocatorDefault,
|
||||
placeholder,
|
||||
component,
|
||||
false,
|
||||
);
|
||||
CFRelease(placeholder);
|
||||
if url.is_null() {
|
||||
CFRelease(imaginary);
|
||||
return ptr::null_mut();
|
||||
}
|
||||
placeholder = url;
|
||||
count += 1;
|
||||
}
|
||||
CFRelease(imaginary);
|
||||
}
|
||||
|
||||
let cf_path = CFURLCopyFileSystemPath(placeholder, kCFURLPOSIXPathStyle);
|
||||
CFRelease(placeholder);
|
||||
cf_path
|
||||
}
|
||||
135
third-party/vendor/fsevent-sys/src/fsevent.rs
vendored
Normal file
135
third-party/vendor/fsevent-sys/src/fsevent.rs
vendored
Normal file
|
|
@ -0,0 +1,135 @@
|
|||
#![allow(non_upper_case_globals, non_camel_case_types)]
|
||||
|
||||
use crate::core_foundation::{
|
||||
Boolean, CFAbsoluteTime, CFAllocatorCopyDescriptionCallBack, CFAllocatorRef,
|
||||
CFAllocatorReleaseCallBack, CFAllocatorRetainCallBack, CFArrayRef, CFIndex, CFRunLoopRef,
|
||||
CFStringRef, CFTimeInterval,
|
||||
};
|
||||
use libc::dev_t;
|
||||
use std::os::raw::{c_uint, c_void};
|
||||
|
||||
pub type FSEventStreamRef = *mut c_void;
|
||||
pub type ConstFSEventStreamRef = *const c_void;
|
||||
|
||||
pub type FSEventStreamCallback = extern "C" fn(
|
||||
FSEventStreamRef, // ConstFSEventStreamRef streamRef
|
||||
*mut c_void, // void *clientCallBackInfo
|
||||
usize, // size_t numEvents
|
||||
*mut c_void, // void *eventPaths
|
||||
*const FSEventStreamEventFlags, // const FSEventStreamEventFlags eventFlags[]
|
||||
*const FSEventStreamEventId, // const FSEventStreamEventId eventIds[]
|
||||
);
|
||||
|
||||
pub type FSEventStreamEventId = u64;
|
||||
|
||||
pub type FSEventStreamCreateFlags = c_uint;
|
||||
|
||||
pub type FSEventStreamEventFlags = c_uint;
|
||||
|
||||
pub const kFSEventStreamEventIdSinceNow: FSEventStreamEventId = 0xFFFFFFFFFFFFFFFF;
|
||||
|
||||
pub const kFSEventStreamCreateFlagNone: FSEventStreamCreateFlags = 0x00000000;
|
||||
pub const kFSEventStreamCreateFlagUseCFTypes: FSEventStreamCreateFlags = 0x00000001;
|
||||
pub const kFSEventStreamCreateFlagNoDefer: FSEventStreamCreateFlags = 0x00000002;
|
||||
pub const kFSEventStreamCreateFlagWatchRoot: FSEventStreamCreateFlags = 0x00000004;
|
||||
pub const kFSEventStreamCreateFlagIgnoreSelf: FSEventStreamCreateFlags = 0x00000008;
|
||||
pub const kFSEventStreamCreateFlagFileEvents: FSEventStreamCreateFlags = 0x00000010;
|
||||
pub const kFSEventStreamCreateFlagMarkSelf: FSEventStreamCreateFlags = 0x00000020;
|
||||
pub const kFSEventStreamCreateFlagUseExtendedData: FSEventStreamCreateFlags = 0x00000040;
|
||||
pub const kFSEventStreamCreateFlagFullHistory: FSEventStreamCreateFlags = 0x00000080;
|
||||
|
||||
pub const kFSEventStreamEventFlagNone: FSEventStreamEventFlags = 0x00000000;
|
||||
pub const kFSEventStreamEventFlagMustScanSubDirs: FSEventStreamEventFlags = 0x00000001;
|
||||
pub const kFSEventStreamEventFlagUserDropped: FSEventStreamEventFlags = 0x00000002;
|
||||
pub const kFSEventStreamEventFlagKernelDropped: FSEventStreamEventFlags = 0x00000004;
|
||||
pub const kFSEventStreamEventFlagEventIdsWrapped: FSEventStreamEventFlags = 0x00000008;
|
||||
pub const kFSEventStreamEventFlagHistoryDone: FSEventStreamEventFlags = 0x00000010;
|
||||
pub const kFSEventStreamEventFlagRootChanged: FSEventStreamEventFlags = 0x00000020;
|
||||
pub const kFSEventStreamEventFlagMount: FSEventStreamEventFlags = 0x00000040;
|
||||
pub const kFSEventStreamEventFlagUnmount: FSEventStreamEventFlags = 0x00000080;
|
||||
pub const kFSEventStreamEventFlagItemCreated: FSEventStreamEventFlags = 0x00000100;
|
||||
pub const kFSEventStreamEventFlagItemRemoved: FSEventStreamEventFlags = 0x00000200;
|
||||
pub const kFSEventStreamEventFlagItemInodeMetaMod: FSEventStreamEventFlags = 0x00000400;
|
||||
pub const kFSEventStreamEventFlagItemRenamed: FSEventStreamEventFlags = 0x00000800;
|
||||
pub const kFSEventStreamEventFlagItemModified: FSEventStreamEventFlags = 0x00001000;
|
||||
pub const kFSEventStreamEventFlagItemFinderInfoMod: FSEventStreamEventFlags = 0x00002000;
|
||||
pub const kFSEventStreamEventFlagItemChangeOwner: FSEventStreamEventFlags = 0x00004000;
|
||||
pub const kFSEventStreamEventFlagItemXattrMod: FSEventStreamEventFlags = 0x00008000;
|
||||
pub const kFSEventStreamEventFlagItemIsFile: FSEventStreamEventFlags = 0x00010000;
|
||||
pub const kFSEventStreamEventFlagItemIsDir: FSEventStreamEventFlags = 0x00020000;
|
||||
pub const kFSEventStreamEventFlagItemIsSymlink: FSEventStreamEventFlags = 0x00040000;
|
||||
pub const kFSEventStreamEventFlagOwnEvent: FSEventStreamEventFlags = 0x00080000;
|
||||
pub const kFSEventStreamEventFlagItemIsHardlink: FSEventStreamEventFlags = 0x00100000;
|
||||
pub const kFSEventStreamEventFlagItemIsLastHardlink: FSEventStreamEventFlags = 0x00200000;
|
||||
pub const kFSEventStreamEventFlagItemCloned: FSEventStreamEventFlags = 0x00400000;
|
||||
|
||||
#[repr(C)]
|
||||
pub struct FSEventStreamContext {
|
||||
pub version: CFIndex,
|
||||
pub info: *mut c_void,
|
||||
pub retain: Option<CFAllocatorRetainCallBack>,
|
||||
pub release: Option<CFAllocatorReleaseCallBack>,
|
||||
pub copy_description: Option<CFAllocatorCopyDescriptionCallBack>,
|
||||
}
|
||||
|
||||
// https://developer.apple.com/documentation/coreservices/file_system_events
|
||||
#[link(name = "CoreServices", kind = "framework")]
|
||||
extern "C" {
|
||||
pub fn FSEventStreamCopyDescription(stream_ref: ConstFSEventStreamRef) -> CFStringRef;
|
||||
pub fn FSEventStreamCopyPathsBeingWatched(streamRef: ConstFSEventStreamRef) -> CFArrayRef;
|
||||
pub fn FSEventStreamCreate(
|
||||
allocator: CFAllocatorRef,
|
||||
callback: FSEventStreamCallback,
|
||||
context: *const FSEventStreamContext,
|
||||
pathsToWatch: CFArrayRef,
|
||||
sinceWhen: FSEventStreamEventId,
|
||||
latency: CFTimeInterval,
|
||||
flags: FSEventStreamCreateFlags,
|
||||
) -> FSEventStreamRef;
|
||||
pub fn FSEventStreamCreateRelativeToDevice(
|
||||
allocator: CFAllocatorRef,
|
||||
callback: FSEventStreamCallback,
|
||||
context: *const FSEventStreamContext,
|
||||
deviceToWatch: dev_t,
|
||||
pathsToWatchRelativeToDevice: CFArrayRef,
|
||||
sinceWhen: FSEventStreamEventId,
|
||||
latency: CFTimeInterval,
|
||||
flags: FSEventStreamCreateFlags,
|
||||
) -> FSEventStreamRef;
|
||||
pub fn FSEventStreamFlushAsync(stream_ref: FSEventStreamRef) -> FSEventStreamEventId;
|
||||
pub fn FSEventStreamFlushSync(streamRef: FSEventStreamRef);
|
||||
pub fn FSEventStreamGetDeviceBeingWatched(stream_ref: ConstFSEventStreamRef) -> dev_t;
|
||||
pub fn FSEventStreamGetLatestEventId(stream_ref: ConstFSEventStreamRef)
|
||||
-> FSEventStreamEventId;
|
||||
pub fn FSEventStreamInvalidate(stream_ref: FSEventStreamRef);
|
||||
pub fn FSEventStreamRelease(stream_ref: FSEventStreamRef);
|
||||
pub fn FSEventStreamRetain(stream_ref: FSEventStreamRef);
|
||||
pub fn FSEventStreamScheduleWithRunLoop(
|
||||
stream_ref: FSEventStreamRef,
|
||||
run_loop: CFRunLoopRef,
|
||||
run_loop_mode: CFStringRef,
|
||||
);
|
||||
// pub fn FSEventStreamSetDispatchQueue(streamRef: FSEventStreamRef, q: DispatchQueue);
|
||||
pub fn FSEventStreamSetExclusionPaths(
|
||||
stream_ref: FSEventStreamRef,
|
||||
paths_to_exclude: CFArrayRef,
|
||||
) -> Boolean;
|
||||
pub fn FSEventStreamShow(stream_ref: FSEventStreamRef);
|
||||
pub fn FSEventStreamStart(stream_ref: FSEventStreamRef) -> Boolean;
|
||||
pub fn FSEventStreamStop(stream_ref: FSEventStreamRef);
|
||||
pub fn FSEventStreamUnscheduleFromRunLoop(
|
||||
stream_ref: FSEventStreamRef,
|
||||
run_loop: CFRunLoopRef,
|
||||
run_loop_mode: CFStringRef,
|
||||
);
|
||||
// pub fn FSEventsCopyUUIDForDevice(dev: dev_t) -> CFUUID;
|
||||
pub fn FSEventsGetCurrentEventId() -> FSEventStreamEventId;
|
||||
pub fn FSEventsGetLastEventIdForDeviceBeforeTime(
|
||||
dev: dev_t,
|
||||
time: CFAbsoluteTime,
|
||||
) -> FSEventStreamEventId;
|
||||
pub fn FSEventsPurgeEventsForDeviceUpToEventId(
|
||||
dev: dev_t,
|
||||
eventId: FSEventStreamEventId,
|
||||
) -> Boolean;
|
||||
}
|
||||
7
third-party/vendor/fsevent-sys/src/lib.rs
vendored
Normal file
7
third-party/vendor/fsevent-sys/src/lib.rs
vendored
Normal file
|
|
@ -0,0 +1,7 @@
|
|||
#![cfg(target_os = "macos")]
|
||||
#![cfg_attr(feature = "cargo-clippy", allow(unreadable_literal))]
|
||||
|
||||
pub mod core_foundation;
|
||||
mod fsevent;
|
||||
|
||||
pub use fsevent::*;
|
||||
Loading…
Add table
Add a link
Reference in a new issue