github.com/KiraCore/sekai@v0.3.43/x/tokens/keeper/utils.go (about)

     1  package keeper
     2  
     3  import (
     4  	"github.com/KiraCore/sekai/x/tokens/types"
     5  )
     6  
     7  func addTokens(origin, addings []string) []string {
     8  	for _, adding := range addings {
     9  		index := types.FindTokenIndex(origin, adding)
    10  		if index >= 0 {
    11  			continue
    12  		}
    13  		origin = append(origin, adding) // add into the array
    14  	}
    15  	return origin
    16  }
    17  
    18  func removeTokens(origin, removings []string) []string {
    19  	for _, removing := range removings {
    20  		index := types.FindTokenIndex(origin, removing)
    21  		if index < 0 {
    22  			continue
    23  		}
    24  		// fast remove from array
    25  		origin[index] = origin[len(origin)-1] // set last element to index
    26  		origin = origin[:len(origin)-1]       // remove last element
    27  	}
    28  	return origin
    29  }