func()

in sg/internal/engine/rego_query.go [272:295]


func (engine *RegoEngine) executeOneQuerySlow(
	ctx context.Context,
	parsedInput ast.Value,
	query string,
) ([]result.Result, error) {
	regoInstance := engine.createRegoInstance(parsedInput, query)
	resultSet, err := regoInstance.Eval(ctx)
	if err != nil {
		return nil, err
	}

	var rv []result.Result
	for _, evalResult := range resultSet {
		for _, expression := range evalResult.Expressions {
			loadedResults, err := result.FromRegoExpression(query, expression)
			if err != nil {
				return nil, fmt.Errorf("failed to load result: %w", err)
			}
			rv = append(rv, loadedResults...)
		}
	}

	return rv, nil
}