1
/*****************************************************************************
3
Copyright (c) 1998, 2009, Innobase Oy. All Rights Reserved.
5
This program is free software; you can redistribute it and/or modify it under
6
the terms of the GNU General Public License as published by the Free Software
7
Foundation; version 2 of the License.
9
This program is distributed in the hope that it will be useful, but WITHOUT
10
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
11
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
13
You should have received a copy of the GNU General Public License along with
14
this program; if not, write to the Free Software Foundation, Inc., 59 Temple
15
Place, Suite 330, Boston, MA 02111-1307 USA
17
*****************************************************************************/
19
/**************************************************//**
20
@file include/eval0proc.h
1
/******************************************************
21
2
Executes SQL stored procedures and their control structures
23
6
Created 1/20/1998 Heikki Tuuri
24
7
*******************************************************/
31
14
#include "pars0sym.h"
32
15
#include "pars0pars.h"
34
/**********************************************************************//**
35
Performs an execution step of a procedure node.
36
@return query thread to run next or NULL */
17
/**************************************************************************
18
Performs an execution step of a procedure node. */
41
que_thr_t* thr); /*!< in: query thread */
42
/**********************************************************************//**
43
Performs an execution step of an if-statement node.
44
@return query thread to run next or NULL */
23
/* out: query thread to run next or NULL */
24
que_thr_t* thr); /* in: query thread */
25
/**************************************************************************
26
Performs an execution step of an if-statement node. */
49
que_thr_t* thr); /*!< in: query thread */
50
/**********************************************************************//**
51
Performs an execution step of a while-statement node.
52
@return query thread to run next or NULL */
31
/* out: query thread to run next or NULL */
32
que_thr_t* thr); /* in: query thread */
33
/**************************************************************************
34
Performs an execution step of a while-statement node. */
57
que_thr_t* thr); /*!< in: query thread */
58
/**********************************************************************//**
59
Performs an execution step of a for-loop node.
60
@return query thread to run next or NULL */
39
/* out: query thread to run next or NULL */
40
que_thr_t* thr); /* in: query thread */
41
/**************************************************************************
42
Performs an execution step of a for-loop node. */
65
que_thr_t* thr); /*!< in: query thread */
66
/**********************************************************************//**
67
Performs an execution step of an assignment statement node.
68
@return query thread to run next or NULL */
47
/* out: query thread to run next or NULL */
48
que_thr_t* thr); /* in: query thread */
49
/**************************************************************************
50
Performs an execution step of an assignment statement node. */
73
que_thr_t* thr); /*!< in: query thread */
74
/**********************************************************************//**
75
Performs an execution step of a procedure call node.
76
@return query thread to run next or NULL */
55
/* out: query thread to run next or NULL */
56
que_thr_t* thr); /* in: query thread */
57
/**************************************************************************
58
Performs an execution step of a procedure call node. */
81
que_thr_t* thr); /*!< in: query thread */
82
/**********************************************************************//**
83
Performs an execution step of an exit statement node.
84
@return query thread to run next or NULL */
63
/* out: query thread to run next or NULL */
64
que_thr_t* thr); /* in: query thread */
65
/**************************************************************************
66
Performs an execution step of an exit statement node. */
89
que_thr_t* thr); /*!< in: query thread */
90
/**********************************************************************//**
91
Performs an execution step of a return-statement node.
92
@return query thread to run next or NULL */
71
/* out: query thread to run next or NULL */
72
que_thr_t* thr); /* in: query thread */
73
/**************************************************************************
74
Performs an execution step of a return-statement node. */
97
que_thr_t* thr); /*!< in: query thread */
79
/* out: query thread to run next or NULL */
80
que_thr_t* thr); /* in: query thread */
100
83
#ifndef UNIV_NONINL