// Copyright (c) 2014-2015 The Notify Authors. All rights reserved. // Use of this source code is governed by the MIT license that can be // found in the LICENSE file. // +build darwin,kqueue dragonfly freebsd netbsd openbsd package notify import "syscall" // TODO(pblaszczyk): ensure in runtime notify built-in event values do not // overlap with platform-defined ones. // Platform independent event values. const ( osSpecificCreate Event = 0x0100 << iota osSpecificRemove osSpecificWrite osSpecificRename // internal // recursive is used to distinguish recursive eventsets from non-recursive ones recursive // omit is used for dispatching internal events; only those events are sent // for which both the event and the watchpoint has omit in theirs event sets. omit ) const ( // NoteDelete is an event reported when the unlink() system call was called // on the file referenced by the descriptor. NoteDelete = Event(syscall.NOTE_DELETE) // NoteWrite is an event reported when a write occurred on the file // referenced by the descriptor. NoteWrite = Event(syscall.NOTE_WRITE) // NoteExtend is an event reported when the file referenced by the // descriptor was extended. NoteExtend = Event(syscall.NOTE_EXTEND) // NoteAttrib is an event reported when the file referenced // by the descriptor had its attributes changed. NoteAttrib = Event(syscall.NOTE_ATTRIB) // NoteLink is an event reported when the link count on the file changed. NoteLink = Event(syscall.NOTE_LINK) // NoteRename is an event reported when the file referenced // by the descriptor was renamed. NoteRename = Event(syscall.NOTE_RENAME) // NoteRevoke is an event reported when access to the file was revoked via // revoke(2) or the underlying file system was unmounted. NoteRevoke = Event(syscall.NOTE_REVOKE) ) var osestr = map[Event]string{ NoteDelete: "notify.NoteDelete", NoteWrite: "notify.NoteWrite", NoteExtend: "notify.NoteExtend", NoteAttrib: "notify.NoteAttrib", NoteLink: "notify.NoteLink", NoteRename: "notify.NoteRename", NoteRevoke: "notify.NoteRevoke", }