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

     1  package functions
     2  
     3  func Min(args ...interface{}) interface{} {
     4  	switch args[0].(type) {
     5  	case int:
     6  		var ints []int
     7  		for _, arg := range args {
     8  			ints = append(ints, arg.(int))
     9  		}
    10  		return minInt(ints)
    11  	case interface{}:
    12  		switch iType := args[0].(type) {
    13  		case []int:
    14  			return minInt(iType)
    15  		}
    16  	}
    17  	return 0
    18  }
    19  
    20  func minInt(args []int) int {
    21  	if len(args) == 0 {
    22  		return 0
    23  	}
    24  
    25  	min := args[0]
    26  
    27  	for i := 1; i < len(args); i++ {
    28  		if args[i] < min {
    29  			min = args[i]
    30  		}
    31  	}
    32  	return min
    33  }