A threadsafe bidirectional map written in Go
Find a file
2016-11-12 11:07:48 -05:00
.gitignore Bimap 2016-11-09 20:45:07 -05:00
bimap.go Add immutability option 2016-11-12 11:07:48 -05:00
bimap_test.go Add immutability option 2016-11-12 11:07:48 -05:00
README.md Add immutability option 2016-11-12 11:07:48 -05:00

bimap

A bidirectional map written in Go

Installation

go get github.com/vishalkuo/bimap

Usage

import "github.com/vishalkuo/bimap"

biMap := bimap.NewBiMap()
biMap.Insert("key", "value")
val, ok := biMap.InverseGet("value") // val should be "key", ok should be true
biMap.Delete("key")
biMap.Size() // == 0

biMap2 := bimap.NewBiMap()
biMap2.Insert("key", 1) // Notice different types
val, ok := biMap2.Get("key") // Returns 1
val, ok = biMap2.InverseGet(1) // Returns "key"