type traceMap … type traceMapNode … // stealID steals an ID from the table, ensuring that it will not // appear in the table anymore. func (tab *traceMap) stealID() uint64 { … } // put inserts the data into the table. // // It's always safe for callers to noescape data because put copies its bytes. // // Returns a unique ID for the data and whether this is the first time // the data has been added to the map. func (tab *traceMap) put(data unsafe.Pointer, size uintptr) (uint64, bool) { … } func (tab *traceMap) newTraceMapNode(data unsafe.Pointer, size, hash uintptr, id uint64) *traceMapNode { … } // reset drops all allocated memory from the table and resets it. // // The caller must ensure that there are no put operations executing concurrently // with this function. func (tab *traceMap) reset() { … }