forked from bloomberg/comdb2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcr_utils.h
64 lines (50 loc) · 1.75 KB
/
cr_utils.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
/*
Copyright 2015 Bloomberg Finance L.P.
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
*/
#ifndef INCLUDED_CR_UTILS_H
#define INCLUDED_CR_UTILS_H
/**
* Calc Route Client Utilities
*
* Author: Shabbir Dahodwala
**/
#ifndef _CRC_UTILS_H_
#define _CRC_UTILS_H_
struct crc_Iterator;
typedef struct crc_Iterator CRCIterator;
CRCIterator *crc_iterator_get(void);
void crc_iterator_free(CRCIterator *iterator);
void crc_iterator_set(CRCIterator *iterator, const void *items, int nitems);
/**
* crc_iterator_first: Get the first element from the iterator
* Returns NULL if none available
**/
const void *crc_iterator_first(CRCIterator *iterator);
/**
* crc_iterator_next: Get the next element from the iterator
* Returns NULL if none available
**/
const void *crc_iterator_next(CRCIterator *iterator);
/**
* crc_iterator_hasNext: does the iterator have another element?
* Returns:
* 1 - if available
* 0 - if not.
**/
int crc_iterator_hasNext(CRCIterator *iterator);
/**
* crc_iterator_current: Get the current element from the iterator
* Returns NULL if none available
**/
const void *crc_iterator_current(CRCIterator *iterator);
#endif /* _CRC_UTILS_H_ */
#endif