flock_others.go raw
1 // Copyright 2015 Tim Heckman. All rights reserved.
2 // Copyright 2018-2025 The Gofrs. All rights reserved.
3 // Use of this source code is governed by the BSD 3-Clause
4 // license that can be found in the LICENSE file.
5
6 //go:build (!unix && !windows) || plan9
7
8 package flock
9
10 import (
11 "errors"
12 "io/fs"
13 )
14
15 func (f *Flock) Lock() error {
16 return &fs.PathError{
17 Op: "Lock",
18 Path: f.Path(),
19 Err: errors.ErrUnsupported,
20 }
21 }
22
23 func (f *Flock) RLock() error {
24 return &fs.PathError{
25 Op: "RLock",
26 Path: f.Path(),
27 Err: errors.ErrUnsupported,
28 }
29 }
30
31 func (f *Flock) Unlock() error {
32 return &fs.PathError{
33 Op: "Unlock",
34 Path: f.Path(),
35 Err: errors.ErrUnsupported,
36 }
37 }
38
39 func (f *Flock) TryLock() (bool, error) {
40 return false, f.Lock()
41 }
42
43 func (f *Flock) TryRLock() (bool, error) {
44 return false, f.RLock()
45 }
46