MCPcopy Create free account
hub / github.com/antchfx/xpath / get

Method get

cache.go:39–59  ·  view source on GitHub ↗
(key interface{})

Source from the content-addressed store, hash-verified

37}
38
39func (c *loadingCache) get(key interface{}) (interface{}, error) {
40 c.RLock()
41 v, found := c.m[key]
42 c.RUnlock()
43 if found {
44 return v, nil
45 }
46 v, err := c.load(key)
47 if err != nil {
48 return nil, err
49 }
50 c.Lock()
51 if c.cap > 0 && len(c.m) >= c.cap {
52 c.m = map[interface{}]interface{}{key: v}
53 c.reset++
54 } else {
55 c.m[key] = v
56 }
57 c.Unlock()
58 return v, nil
59}
60
61var (
62 // RegexpCache is a loading cache for string -> *regexp.Regexp mapping. It is exported so that in rare cases

Calls

no outgoing calls