Skip to content

Joey92/gomasks

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Example:

import "github.com/Joey92/gomasks"

const (
	USER_ROLE_A gomasks.Bitmask = 1 << iota
	USER_ROLE_B
	USER_ROLE_C
)

func BitmaskInAction() {

	var Roles gomasks.Bitmask

	// Add flags
	Roles.AddFlag(USER_ROLE_A)
	Roles.AddFlag(USER_ROLE_B)
	Roles.AddFlag(USER_ROLE_C)

	fmt.Println(Roles) // 7

	// Check flags
	Roles.HasFlag(USER_ROLE_A) // true
	Roles.HasFlag(USER_ROLE_B) // true

	// Remove flags
	Roles.RemoveFlag(USER_ROLE_C)

	Roles.HasFlag(USER_ROLE_C) // false

	// All stored in an uint32!
	fmt.Println(Roles) // 3

}

About

Making Bitmasks easy

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages