Logo

0x5a.live

for different kinds of informations and explorations.

GitHub - goradd/maps: map library using Go generics that offers a standard interface, go routine synchronization, and sorting

map library using Go generics that offers a standard interface, go routine synchronization, and sorting - goradd/maps

Visit SiteGitHub - goradd/maps: map library using Go generics that offers a standard interface, go routine synchronization, and sorting

GitHub - goradd/maps: map library using Go generics that offers a standard interface, go routine synchronization, and sorting

map library using Go generics that offers a standard interface, go routine synchronization, and sorting - goradd/maps

Powered by 0x5a.live ๐Ÿ’—

Go Reference Build Status Go Report Card codecov

maps

maps is a library using Go generics that offers a standard interface for manipulating different kinds of maps.

Using the same interface, you can create and use a standard Go map, a map that is safe for concurrency and/or a map that lets you order the keys in the map.

A Set class is included for quickly determining membership in a group.

Example

package main

import . "github.com/goradd/maps"
import "fmt"

type myMap = Map[string,int] // the equal sign here is critical!
type myStdMap = StdMap[string, int]

func main() {
	m := new(Map[string, int])
	
	m.Copy(myStdMap{"b":2, "c":3})
	m.Set("a",1)

	sum := 0
	for v := range m.All() {
		sum += v
    }
	fmt.Print(sum)
}

By simply changing myMap to a SafeMap, you can make the map safe for concurrent use. Or, you can change myMap to a SliceMap, or a SafeSliceMap to also be able to iterate the map in the order it was created, similar to a PHP map.

GoLang Resources

are all listed below.

Resources

listed to get explored on!!

Made with โค๏ธ

to provide different kinds of informations and resources.