PostgreSQL Source Code  git master
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
sdir.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * sdir.h
4  * POSTGRES scan direction definitions.
5  *
6  *
7  * Portions Copyright (c) 1996-2017, PostgreSQL Global Development Group
8  * Portions Copyright (c) 1994, Regents of the University of California
9  *
10  * src/include/access/sdir.h
11  *
12  *-------------------------------------------------------------------------
13  */
14 #ifndef SDIR_H
15 #define SDIR_H
16 
17 
18 /*
19  * ScanDirection was an int8 for no apparent reason. I kept the original
20  * values because I'm not sure if I'll break anything otherwise. -ay 2/95
21  */
22 typedef enum ScanDirection
23 {
28 
29 /*
30  * ScanDirectionIsValid
31  * True iff scan direction is valid.
32  */
33 #define ScanDirectionIsValid(direction) \
34  ((bool) (BackwardScanDirection <= (direction) && \
35  (direction) <= ForwardScanDirection))
36 
37 /*
38  * ScanDirectionIsBackward
39  * True iff scan direction is backward.
40  */
41 #define ScanDirectionIsBackward(direction) \
42  ((bool) ((direction) == BackwardScanDirection))
43 
44 /*
45  * ScanDirectionIsNoMovement
46  * True iff scan direction indicates no movement.
47  */
48 #define ScanDirectionIsNoMovement(direction) \
49  ((bool) ((direction) == NoMovementScanDirection))
50 
51 /*
52  * ScanDirectionIsForward
53  * True iff scan direction is forward.
54  */
55 #define ScanDirectionIsForward(direction) \
56  ((bool) ((direction) == ForwardScanDirection))
57 
58 #endif /* SDIR_H */
ScanDirection
Definition: sdir.h:22