public ValuesQueryResultAction(IInternalValuesQuery query, IStorageEngine storageEngine,
                                       IInstanceBuilder instanceBuilder)
        {
            _engine            = storageEngine;
            _query             = query;
            _queryHasOrderBy   = query.HasOrderBy();
            _returnArraySize   = query.ObjectActionsCount;
            _queryFieldActions = new IQueryFieldAction[_returnArraySize];

            var i = 0;

            foreach (var action in _query.GetObjectActions())
            {
                _queryFieldActions[i] = action.Copy();
                _queryFieldActions[i].SetReturnInstance(query.ReturnInstance());
                ((AbstractQueryFieldAction)_queryFieldActions[i]).SetInstanceBuilder(instanceBuilder);
                i++;
            }
        }