Home | History | Annotate | Download | only in internal
      1 !<arch>
      2 __.PKGDEF       0           0     0     644     927       `
      3 go object darwin amd64 go1.8 X:framepointer
      4 build id "539680dbe9b0fdb383d3ac5cd20d71e68a514c6c"
      5 ----
      6 
      7 build id "539680dbe9b0fdb383d3ac5cd20d71e68a514c6c"
      8 
      9 $$B
     10 version 3
     11 
     12 singleflight
a|SGOROOT/src/internal/singleflight/singleflight.go	Groupmu
)	Mutexsync	statesemaLock>m1Unlock>,m 
6call
     18 Ywg
WaitGroupnoCopy
 Dstate1"AddB	wg1delta2DoneB&WaitB&B	wg2esc:0x12valerr&
     23 dups	chans
ResultmValErr&SharedDo<g4 key5&	fn6
esc:0x9v1&err2shared3,DoChan<g2 key3&	fn4FLForget<g1 key2
esc:0x1doCall<\@c2 V`&XJF	(init6zXX6t."
     39 %
     40 %XX6t."XX6t."
     41 %
     42 $$
     43 _go_.o          0           0     0     644     25832     `
     44 go object darwin amd64 go1.8 X:framepointer
     45 build id "539680dbe9b0fdb383d3ac5cd20d71e68a514c6c"
     46 ----
     47 
     48 
     49 !
     50 go17ldsync.a"".(*Group).Do*runtime.racefuncenter$sync.(*Mutex).Lock runtime.raceread0type.map[string]*"".call4runtime.mapaccess2_faststrtype."".call"runtime.newobject*sync.(*WaitGroup).Add"runtime.mapassign"runtime.racewrite(runtime.writeBarrier(sync.(*Mutex).Unlock$"".(*Group).doCall(runtime.racefuncexit.runtime.writebarrierptr,sync.(*WaitGroup).Waitruntime.makemap0runtime.morestack_noctxtoktype.bool.autotmp_13type.intctype.*"".call.autotmp_19.autotmp_18type.*int.autotmp_17type.*uint8.autotmp_16.autotmp_15.autotmp_14.autotmp_12type.**"".call.autotmp_11.autotmp_102type.*map[string]*"".call.autotmp_4type.stringsharederrtype.errorv"type.interface {}fnBtype.func() (interface {}, error)keygtype.*"".Group.fptype.uintptrTgclocals04b976d88f5a38f09de3d126701d93feTgclocals591a616696f0f7e116e1c9b5d6c520e7b$GOROOT/src/internal/singleflight/singleflight.go$"".(*Group).DoChan&type.chan "".Result runtime.makechan$runtime.panicslice*type.chan<- "".Result"runtime.growslice,runtime.racewriterange runtime.duffzero0type.[1]chan<- "".Result*"".(*Group).doCallfruntime.newproc.autotmp_40.autotmp_39.autotmp_36ch.autotmp_44.autotmp_43.autotmp_422type.*[1]chan<- "".Result.autotmp_41,type.*chan<- "".Result.autotmp_38.autotmp_370type.*[]chan<- "".Result.autotmp_35.autotmp_34.autotmp_33.autotmp_24~r2*type.<-chan "".ResultTgclocalsd0873d7cdfbff45b53cad34463092c3aTgclocals502529edd9c488a5e2626ae33a451046,sync.(*WaitGroup).Done"runtime.mapdelete"runtime.chansend1.autotmp_61.autotmp_60.autotmp_62.autotmp_59type.*error.autotmp_58.autotmp_57.autotmp_56.autotmp_55.autotmp_54$type.*interface {}.autotmp_47.autotmp_49type."".ResultTgclocals0d5f6fa73679b7fde5ae5ab7740c43d0Tgclocals99600c6bed96d96edce98ef159eddc73$"".(*Group).Forget.autotmp_63Tgclocals093d72ce5e8d4def2296140b9322b254Tgclocals87f6052ef51eed84352c5a7cd7c29d63"".init"".initdone"runtime.throwinitsync.initTgclocals33cdeccccebe80329f1fdbee7f5874cb(type..hash."".Result(runtime.nilinterhash"runtime.interhashruntime.memhashhptype.*"".ResultTgclocalse6397a44f8e1b6e77d0f200b4fba5269Tgclocals69c1753bd5f81501d95132d08af04464$type..eq."".Resultruntime.ifaceeqruntime.efaceeq.autotmp_73.autotmp_72.autotmp_71qTgclocalsb5c7440574e69788f4b5c44c58660c31Tgclocalscebf9419b90e46477aa4e5920f8669ae,go.info."".(*Group).Dogo.info.bool go.info.*"".callgo.info.uintptr"go.info.*"".Groupgo.info.stringHgo.info.func() (interface {}, error)(go.info.interface {}go.info.error4go.info."".(*Group).DoChan,go.info.chan "".Result0go.info.<-chan "".Result4go.info."".(*Group).doCall0go.info.chan<- "".Result4go.info."".(*Group).Forgetgo.info."".inittype.uint8"runtime.gcbits.01:type..namedata.*interface {}. runtime.algarray"runtime.gcbits.038go.info.type..hash."".Result$go.info.*"".Result4go.info.type..eq."".Result0type..hashfunc."".Result,type..eqfunc."".Result&type..alg."".ResultJtype..namedata.**singleflight.Result. type.**"".ResultHtype..namedata.*singleflight.Result."runtime.gcbits.0f(type..importpath."".&type..namedata.Val.&type..namedata.Err.,type..namedata.Shared.Xtype..namedata.**chan<- singleflight.Result..type.**chan<- "".ResultVtype..namedata.*chan<- singleflight.Result.\type..namedata.**[]chan<- singleflight.Result.2type.**[]chan<- "".ResultZtype..namedata.*[]chan<- singleflight.Result..type.[]chan<- "".Result"runtime.gcbits.bcDtype..namedata.*singleflight.call.$type..namedata.wg.&type..namedata.val.&type..namedata.err.(type..namedata.dups.*type..namedata.chans.&type.sync.WaitGroupHtype..namedata.***singleflight.call.type.***"".callFtype..namedata.**singleflight.call.0type..namedata.*[]uint8.type.*[]uint8type.[]uint82type..namedata.*[8]uint8.type.*[8]uint8type.[8]uint8runtime.gcbits.2type..namedata.*[]string.type.*[]stringtype.[]string4type..namedata.*[8]string.type.*[8]string(type.noalg.[8]string&runtime.gcbits.5555Jtype..namedata.*[]*singleflight.call. type.*[]*"".calltype.[]*"".callLtype..namedata.*[8]*singleflight.call."type.*[8]*"".call,type.noalg.[8]*"".call"runtime.gcbits.ffjtype..namedata.*map.bucket[string]*singleflight.call.@type.*map.bucket[string]*"".callJtype.noalg.map.bucket[string]*"".call.runtime.gcbits.aaaafe03$type..importpath...type..namedata.topbits.(type..namedata.keys.,type..namedata.values.0type..namedata.overflow.dtype..namedata.*map.hdr[string]*singleflight.call.:type.*map.hdr[string]*"".callDtype.noalg.map.hdr[string]*"".call"runtime.gcbits.2c*type..namedata.count.*type..namedata.flags."type..namedata.B.2type..namedata.noverflow.*type..namedata.hash0..type..namedata.buckets.4type..namedata.oldbuckets.2type..namedata.nevacuate.type.uint16type.uint32&type.unsafe.Pointer\type..namedata.*map[string]*singleflight.call."runtime.gcbits.02Ftype..namedata.*singleflight.Group.$type..namedata.mu."type..namedata.m.type."".Grouptype.sync.MutexHtype..namedata.**singleflight.Group.type.**"".GroupZtype..namedata.*func() (interface {}, error).Dtype.*func() (interface {}, error)type..namedata.*func(*singleflight.Group, string, func() (interface {}, error)) (interface {}, error, bool).type.*func(*"".Group, string, func() (interface {}, error)) (interface {}, error, bool)type.func(*"".Group, string, func() (interface {}, error)) (interface {}, error, bool)Vtype..namedata.*<-chan singleflight.Result.,type.*<-chan "".Resulttype..namedata.*func(*singleflight.Group, string, func() (interface {}, error)) <-chan singleflight.Result.type.*func(*"".Group, string, func() (interface {}, error)) <-chan "".Resulttype.func(*"".Group, string, func() (interface {}, error)) <-chan "".Resultdtype..namedata.*func(*singleflight.Group, string).:type.*func(*"".Group, string)8type.func(*"".Group, string)type..namedata.*func(*singleflight.Group, *singleflight.call, string, func() (interface {}, error)).type.*func(*"".Group, *"".call, string, func() (interface {}, error))type.func(*"".Group, *"".call, string, func() (interface {}, error))$type..namedata.Do.type..namedata.*func(string, func() (interface {}, error)) (interface {}, error, bool).type.*func(string, func() (interface {}, error)) (interface {}, error, bool)type.func(string, func() (interface {}, error)) (interface {}, error, bool),type..namedata.DoChan.type..namedata.*func(string, func() (interface {}, error)) <-chan singleflight.Result.type.*func(string, func() (interface {}, error)) <-chan "".Resulttype.func(string, func() (interface {}, error)) <-chan "".Result,type..namedata.Forget.:type..namedata.*func(string).$type.*func(string)"type.func(string),type..namedata.doCall.type..namedata.*func(*singleflight.call, string, func() (interface {}, error)).ttype.*func(*"".call, string, func() (interface {}, error))rtype.func(*"".call, string, func() (interface {}, error))Rtype..namedata.*chan singleflight.Result.(type.*chan "".Result^type..namedata.**[1]chan<- singleflight.Result.4type.**[1]chan<- "".Result\type..namedata.*[1]chan<- singleflight.Result.,type..importpath.sync.	eH%HD$H;AHH$H$H$H$H$H$H$HHH$HH$H$HHHH$HH$H$HHHL$H
H$H$HT$H$H\$HD$ H$L$(L$7HH$H$HHD$HL$7HH$HD$HD$@H$HD$H$H$H$H$H$H$H$HHHL$H
H$H$HL$HD$H$HH$H$
HL$@HH$H$H$H$HD$@HD$H$HL$H$HL$H$HL$ HD$@HH0H$HD$@HH0HL$8HP H$HD$@HHH$HD$@HHHL$xHPHT$pHX(H\$hH@ HD$`HD$pH$HD$xH$HD$`H$HD$hH$HD$8H$H$HH$HD$@HD$HL$@HH0HL$XHH$HD$HHH0HL$8HT$XH$HD$8HHL$HHA0H$H$HD$HH$HD$HHH H$HD$HHHH$HD$HHH HL$xHPHT$pHXH\$hH@(HD$`HD$hH$HD$pH$HD$xH$HD$`H$$H$HH
H$HD$HD$HD$HD$ HD$PH$HH$uHD$PH$HAHH$H$HL$PHL$H$W
     66 	`/"5%bBOBBMLd
     69 	
     70 ;3-1G1Bmi
     71 "bw>
     72 eH%HD$H;AHH$H$H$H$HH$HD$H$HL$HL$`H$H$HHH$HH$H$HHHH$HH$H$HHHL$H
H$H$HT$H$H\$HD$ H$L$(L$GHH$H$HHD$hL$GHH0H$HH$HD$hHH0HL$XH$H$HD$XHHL$hHA0HA8H$HH$HD$hHH@HPHHH)Hp8H(H$H\$XHL$PHQHT$HH9H<H$IL$HD$PHL$`H$HH$HH$HD$HHL$hHA@HD$XHAHu?H$HA8H$H$HD$`H$H$HH$H$H$HD$H$H$HD$`HD$HL$`H$?HH$Ht$HL$H\$HHL$ Ht$(HL$0H\$8HD$hHH$HD$HD$pHH$HD$PH|$pWHHl$Hl$HmHH$HD$H$HH$H$
HL$`HHT$pHZ8H$HH4$HD$pH@@H@H
\H$HH8H$HD$H$H$H$H$H$H$H$HHHL$H
H$H$HL$HD$H$HH$H$
HL$pHH$H$H$HD$HD$pHD$H$HD$ H$HD$(H$HD$0$(HHD$HD$`H$H$HH$HD$pHD$HL$pZH$H$H$HL$HD$pH$HL$`HL$H$HL$`H
H$HD$HD$HD$HD$ HD$xH$HH$uHD$xH$HAHH$H$HL$xHL$H$
     89 /&#
     91 
     92 	5%bHTBOV"	
     93 
d
     95 
     97 ;6 5)]8>@)	)	J=A1G1V
5
     99 (=>
    100 eH%HD$H;A7HH$H$H$H$H$HH$HHHL$hHH\$H\$`Ht$Ht$XH<$H|$PLD$LD$HH$HD$PH$HAHQ{HD$XHAHA HD$@HH$HD$HH$HA HQ(HD$`HA(H$H$H$H$HD$pH$HD$xH$HHH$H$HHHL$H
H$HL$pHL$H$HH8H$H$HH8HP@HT$(1H\$ HL$8H96HH4$HD$8HHL$0H$H$H$H$H$HT$hHH$H$HHHPH$H$HL$@HH$H$HH(HP H$H$HH0H$H$HH0H$H
H$HT$0HT$H$HT$HD$8HHHD$ HXH$HT$(H\$ HL$8H9H$H$H$HH$HD$`HD$H$H$HD$XHD$H$n@
    110 /	ZX
 
    112 ;AA5B@6ZC( 
    114 eH%H;aH0Hl$(Hl$(HD$0H$HD$8H$HD$@HD$HD$HHD$ HD$8HHH$HD$8HHHL$H
H$HL$HL$HD$8H$Hl$(H0J`_!N
    120 
    121 *68
    122 eH%H;aHHl$Hl$HD$H$HHH$<vHl$HHHH$<uHHH$HH$Hl$H0 D i*
    129 eH%H;aH(Hl$ Hl$ HD$(H$HD$0H$HL$8HL$HD$HL$0HQH$HD$HD$HL$0H H$HD$HD$HD$HD$8HD$8HD$@Hl$ H(KPO*Y(
    133 eH%H;aHHHl$@Hl$@HD$HH$HD$XHH$HD$PHHT$XHZH\$8H2Ht$0H$HD$PHHHH\$0H91u\1u1D$/D$/D$`Hl$@HHHH H$HD$XHH H$HD$P@ HL$XI 8HL$XHQH$HD$PHHHT$XHZH\$8HrHt$0H$HD$PHHHPH\$8H9t1MH$HL$H\$HL$0HL$L$ HD$P!H$HL$H\$HL$8HL$L$ HD$Pb
    140 *81 f;@
    141 

	
    144 
	"".(*Group).Dook~"c"c#2".fpx"gkey"fn"v "err0"shared"	%%	"".(*Group).DoChanok~"ch"c"c#3".fpx"gkey"fn"~r2 "<<"".(*Group).doCallch~".fpx"gc"key"fn """.(*Group).Forget.fpx"gkey""".init.fpx"
*interface {}O6Wtype..hash."".Result.fpx"ph"~r2"type..eq."".Result.fpx"pq"~r2"**singleflight.Result6*singleflight.ResultU16internal/singleflightValErrShared( HYX **chan<- singleflight.ResultP6*chan<- singleflight.Result9GP6	n2**[]chan<- singleflight.ResultA 6*[]chan<- singleflight.Result}x61>q*singleflight.callwgvalerrdupschansP@a# 08***singleflight.call6**singleflight.call"h'6d6*[]uint8i6~.8	*[8]uint8z6>0	*[]string"v6
    169 
    170 *[8]stringo6UUxUS>*[]*singleflight.call6*[8]*singleflight.callc
    171 6@@s{%*map.bucket[string]*singleflight.callr6topbitskeysvaluesoverflow"*map.hdr[string]*singleflight.callEUh6,countflagsB	noverflowhash0buckets
    172 oldbuckets	nevacuate00[			
    173  (*map[string]*singleflight.call=cI65*singleflight.Groupmum6&@**singleflight.GroupnQ6*func() (interface {}, error)6j/3\*func(*singleflight.Group, string, func() (interface {}, error)) (interface {}, error, bool)6<63*<-chan singleflight.ResultF602[*func(*singleflight.Group, string, func() (interface {}, error)) <-chan singleflight.ResultsK6y3"*func(*singleflight.Group, string)+=s6^]3T*func(*singleflight.Group, *singleflight.call, string, func() (interface {}, error))6"{3DoG*func(string, func() (interface {}, error)) (interface {}, error, bool)c')6Oz)3DoChanF*func(string, func() (interface {}, error)) <-chan singleflight.ResultTFg6=@3Forget
*func(string)iHJ^63doCall?*func(*singleflight.call, string, func() (interface {}, error))D_6f36*chan singleflight.ResultE6U;2**[1]chan<- singleflight.Result6*[1]chan<- singleflight.ResultQh6r1syncH
    177  x
    178 
    180 		
    181  

"
    188 $ &*(*,.02024
    189 68:<><@o<B_<DOFH?FJ/LNPR*T`VX@Z\0^`Pbdfh0xTjlnpj
    190  xrt
    191 			
    193   vxz
|
~

    204    
    205 $ &P,(*...r0202
    206 Fo<_O8?F/LP@\0^`Pbdfh0n

0
    209  x
    210 		
    211 x
    212   
&P"..x<<<<oPO\@^` P02bdfh L@n
    218  Vv
    219 &0`P`Pbdfh n&
    220  Vd|& fh
    221 n
    222  V&0P hhfhn
    223  Vx&0!*<< *fh""nlDDjDDZ 0V8x888888888\\66Z(p8p^888888888@@((Z(8
^888888Z
    225 (8^8x88ZZZ"H8@  
    226 pp0@P
    227 `ZZ
    228 0@P
    229 XpZZ,<b8|888Z(8^8x888  00
    233 pp0@P
    234 `..pp
    235 0@P
    236 X`000@P
    242 X
    243 `p
    244 ZV*>>
    245 pp0@P
    246 `<<
    247 pp
    248 0@P
    249 X`xx
    251 
    252 0@P
    253 X`BB
    255 pp0@P
    256 `@@
    257 pp
    258 0@P
    259 X`
    261 pp
    262 0@P
    263 X`x**
    265 
    266 "0@P
    271 X
    272 2`p
    273 ZV...
    274 pp0@P
    275 `F,,F
    276 pp
    277 0@P
    278 X`22pp
    280 0@P
    281 XF`
    283 pp0@P
    284 `
    285 pp
    286 0@P
    287 X`
    289 pp0@P
    290 `
    291 0@P
    293 X`p
    295 pp0@P
    296 `
    297 pp
    298 0@P
    299 X`P
    301 pp0@P
    302 `
    303 0@P
    305 X`Pp00
    307 pp0@P
    308 `
    309 pp
    310 0@P
    311 X`222
    313 pp0@P
    314 `
    315 0@P
    317 X`2pPP
    319 pp0@P
    320 `
    321 0@P
    322 X`pJJ
    324 pp0@P
    325 `
    326 00@P
    327 X`p.hBBL
    329 pp0@P
    330 `
    331 
    332 
    333 0@P
    334 XL`Pp2,,
    336 
    337 0@P
    338 X
    339 d`p
    340 
    341 ..
    342 pp0@P
    343 `d@@
    344 pp0@P
    345 `^^
    346 0@P
    348 XpZV
    350 pp0@P
    351 `
    352 0@P
    353 XpdP^ZV*<<
    355 pp0@P
    356 `
    357 
    358 0@P
    359 X`
    361 pp0@P
    362 `
    363 0@P
    364 XpdP^JJ
    366 pp0@P
    367 `
    368 0@P
    370 XpdP
    372 pp0@P
    373 `
    374 0@P
    375 Xpd2P^
    377 
    378 
    379 pp0@P
    380 `
    381 0@P
    382 XpP^ZV*
    384 pp0@P
    385 `
    386 0@P
    387 XpP^  
    389 pp0@P
    390 `
    391 
    392 0@P
    393 XpP
    395 pp0@P
    396 `
    397 0@P
    398 Xp2P^d,0@P
    400 X`p
    402 
    403 000
    404 00p0p
    405 000
    406 00088
    407 pp0@P
    408 `rr
    409 
    410 0@P
    411 X`DD
    413 pp0@P
    414 `BB
    415 pp
    416 0@P
    417 X`
    419 0@P
    421 X`xpgo17ld