github.com/khulnasoft-lab/defsec@v1.0.5-0.20230827010352-5e9f46893d95/pkg/scanners/azure/functions/array.go (about)

     1  package functions
     2  
     3  func Array(args ...interface{}) interface{} {
     4  
     5  	if len(args) != 1 {
     6  		return ""
     7  	}
     8  
     9  	switch ctype := args[0].(type) {
    10  	case int:
    11  		return []int{ctype}
    12  	case string:
    13  		return []string{ctype}
    14  	case map[string]interface{}:
    15  		var result []interface{}
    16  		for k, v := range ctype {
    17  			result = append(result, k, v)
    18  		}
    19  		return result
    20  	case interface{}:
    21  		switch ctype := ctype.(type) {
    22  		case []string:
    23  			return ctype
    24  		case []interface{}:
    25  			return ctype
    26  		}
    27  	}
    28  	return []interface{}{}
    29  }