MySQL 5.6.14 Source Code Document
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
ut0rnd.h
Go to the documentation of this file.
1
/*****************************************************************************
2
3
Copyright (c) 1994, 2009, Oracle and/or its affiliates. All Rights Reserved.
4
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.
8
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.
12
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.,
15
51 Franklin Street, Suite 500, Boston, MA 02110-1335 USA
16
17
*****************************************************************************/
18
19
/******************************************************************/
26
#ifndef ut0rnd_h
27
#define ut0rnd_h
28
29
#include "univ.i"
30
31
#ifndef UNIV_INNOCHECKSUM
32
33
#include "
ut0byte.h
"
34
37
#define UT_END_OF_FIELD 257
38
39
/********************************************************/
41
UNIV_INLINE
42
void
43
ut_rnd_set_seed
(
44
/*============*/
45
ulint seed);
46
/********************************************************/
49
UNIV_INLINE
50
ulint
51
ut_rnd_gen_next_ulint
(
52
/*==================*/
53
ulint rnd);
54
/*********************************************************/
60
UNIV_INLINE
61
ulint
62
ut_rnd_gen_ulint
(
void
);
63
/*==================*/
64
/********************************************************/
67
UNIV_INLINE
68
ulint
69
ut_rnd_interval
(
70
/*============*/
71
ulint low,
72
ulint high);
73
/*********************************************************/
76
UNIV_INLINE
77
ibool
78
ut_rnd_gen_ibool
(
void
);
79
/*=================*/
80
/*******************************************************/
85
UNIV_INLINE
86
ulint
87
ut_hash_ulint
(
88
/*==========*/
89
ulint key,
90
ulint table_size);
91
/*************************************************************/
94
UNIV_INLINE
95
ulint
96
ut_fold_ull
(
97
/*========*/
98
ib_uint64_t d)
99
__attribute__((
const
));
100
/*************************************************************/
103
UNIV_INLINE
104
ulint
105
ut_fold_string(
106
/*===========*/
107
const
char
* str)
108
__attribute__((pure));
109
/***********************************************************/
113
UNIV_INTERN
114
ulint
115
ut_find_prime
(
116
/*==========*/
117
ulint
n
)
118
__attribute__((
const
));
119
120
#endif
/* !UNIV_INNOCHECKSUM */
121
122
/*************************************************************/
125
UNIV_INLINE
126
ulint
127
ut_fold_ulint_pair
(
128
/*===============*/
129
ulint n1,
130
ulint n2)
131
__attribute__((
const
));
132
/*************************************************************/
135
UNIV_INLINE
136
ulint
137
ut_fold_binary
(
138
/*===========*/
139
const
byte* str,
140
ulint len)
141
__attribute__((pure));
142
143
144
#ifndef UNIV_NONINL
145
#include "ut0rnd.ic"
146
#endif
147
148
#endif
storage
innobase
include
ut0rnd.h
Generated on Sat Nov 9 2013 01:26:36 for MySQL 5.6.14 Source Code Document by
1.8.1.2