mirror of
https://github.com/pikami/cosmium.git
synced 2025-05-26 02:03:04 +01:00
32 lines
755 B
Go
32 lines
755 B
Go
package memoryexecutor
|
|
|
|
import (
|
|
"github.com/pikami/cosmium/parsers"
|
|
)
|
|
|
|
func (r rowContext) misc_In(arguments []interface{}) bool {
|
|
value := r.resolveSelectItem(arguments[0].(parsers.SelectItem))
|
|
|
|
for i := 1; i < len(arguments); i++ {
|
|
compareValue := r.resolveSelectItem(arguments[i].(parsers.SelectItem))
|
|
if compareValues(value, compareValue) == 0 {
|
|
return true
|
|
}
|
|
}
|
|
|
|
return false
|
|
}
|
|
|
|
func (r rowContext) misc_Iif(arguments []interface{}) interface{} {
|
|
if len(arguments) != 3 {
|
|
return nil
|
|
}
|
|
|
|
condition := r.resolveSelectItem(arguments[0].(parsers.SelectItem))
|
|
if condition != nil && condition == true {
|
|
return r.resolveSelectItem(arguments[1].(parsers.SelectItem))
|
|
}
|
|
|
|
return r.resolveSelectItem(arguments[2].(parsers.SelectItem))
|
|
}
|