forked from traefik/yaegi
/
go1_16_sync.go
44 lines (36 loc) · 1.03 KB
/
go1_16_sync.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
// Code generated by 'yaegi extract sync'. DO NOT EDIT.
// +build go1.16,!go1.17
package stdlib
import (
"reflect"
"sync"
)
func init() {
Symbols["sync/sync"] = map[string]reflect.Value{
// function, constant and variable definitions
"NewCond": reflect.ValueOf(sync.NewCond),
// type definitions
"Cond": reflect.ValueOf((*sync.Cond)(nil)),
"Locker": reflect.ValueOf((*sync.Locker)(nil)),
"Map": reflect.ValueOf((*sync.Map)(nil)),
"Mutex": reflect.ValueOf((*sync.Mutex)(nil)),
"Once": reflect.ValueOf((*sync.Once)(nil)),
"Pool": reflect.ValueOf((*sync.Pool)(nil)),
"RWMutex": reflect.ValueOf((*sync.RWMutex)(nil)),
"WaitGroup": reflect.ValueOf((*sync.WaitGroup)(nil)),
// interface wrapper definitions
"_Locker": reflect.ValueOf((*_sync_Locker)(nil)),
}
}
// _sync_Locker is an interface wrapper for Locker type
type _sync_Locker struct {
IValue interface{}
WLock func()
WUnlock func()
}
func (W _sync_Locker) Lock() {
W.WLock()
}
func (W _sync_Locker) Unlock() {
W.WUnlock()
}