Main Page
Namespaces
Classes
Files
Examples
File List
File Members
include
xqilla
runtime
ResultImpl.hpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2001, 2008,
3
* DecisionSoft Limited. All rights reserved.
4
* Copyright (c) 2004, 2018 Oracle and/or its affiliates. All rights reserved.
5
*
6
*
7
* Licensed under the Apache License, Version 2.0 (the "License");
8
* you may not use this file except in compliance with the License.
9
* You may obtain a copy of the License at
10
*
11
* http://www.apache.org/licenses/LICENSE-2.0
12
*
13
* Unless required by applicable law or agreed to in writing, software
14
* distributed under the License is distributed on an "AS IS" BASIS,
15
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
* See the License for the specific language governing permissions and
17
* limitations under the License.
18
*/
19
20
#ifndef _RESULTIMPL_HPP
21
#define _RESULTIMPL_HPP
22
23
#include <xqilla/framework/XQillaExport.hpp>
24
#include <
xqilla/items/Item.hpp
>
25
#include <
xqilla/ast/LocationInfo.hpp
>
26
27
class
DynamicContext
;
28
class
Sequence
;
29
class
Result
;
30
class
ResultBuffer;
31
33
class
XQILLA_API
ResultImpl
:
public
LocationInfo
34
{
35
public
:
36
virtual
~ResultImpl
() {}
37
38
Result
*
getResultPointer
() {
return
resultPointer_; }
39
void
setResultPointer
(
Result
*p) { resultPointer_ = p; }
40
42
virtual
Item::Ptr
next(
DynamicContext
*context);
43
45
virtual
Item::Ptr
nextOrTail(
Result
&tail,
DynamicContext
*context);
46
48
virtual
Sequence
toSequence(
DynamicContext
*context);
49
51
virtual
void
toResultBuffer(
unsigned
int
readCount, ResultBuffer &buffer);
52
54
virtual
void
skip(
unsigned
count,
DynamicContext
*context);
55
56
protected
:
57
ResultImpl
(
const
LocationInfo
*o);
58
59
Result
*
resultPointer_
;
60
61
private
:
62
ResultImpl
(
const
ResultImpl
&) {};
63
ResultImpl
&operator=(
const
ResultImpl
&) {
return
*
this
; };
64
};
65
66
#endif
ResultImpl::resultPointer_
Result * resultPointer_
Definition:
ResultImpl.hpp:59
RefCountPointer< const Item >
ResultImpl::getResultPointer
Result * getResultPointer()
Definition:
ResultImpl.hpp:38
Result
A scoped pointer wrapper for the lazily evaluated query result.
Definition:
Result.hpp:37
ResultImpl::~ResultImpl
virtual ~ResultImpl()
Definition:
ResultImpl.hpp:36
Item.hpp
DynamicContext
The execution time dynamic context interface.
Definition:
DynamicContext.hpp:38
LocationInfo
A class that gives records a location in the query.
Definition:
LocationInfo.hpp:29
Sequence
An eagerly evaluated result of a query execution.
Definition:
Sequence.hpp:39
ResultImpl
A lazily evaluated query result.
Definition:
ResultImpl.hpp:33
ResultImpl::setResultPointer
void setResultPointer(Result *p)
Definition:
ResultImpl.hpp:39
LocationInfo.hpp
Generated by
1.8.5