summaryrefslogtreecommitdiff
path: root/Cython/Includes/libcpp/map.pxd
blob: c2c06b0c963f9944b11ff765999ef77ec1620e6a (plain)
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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
from .utility cimport pair

cdef extern from "<map>" namespace "std" nogil:
    cdef cppclass map[T, U, COMPARE=*, ALLOCATOR=*]:
        ctypedef T key_type
        ctypedef U mapped_type
        ctypedef pair[const T, U] value_type
        ctypedef COMPARE key_compare
        ctypedef ALLOCATOR allocator_type
        cppclass iterator:
            pair[T, U]& operator*()
            iterator& operator++()
            iterator& operator--()
            bint operator==(const iterator&)
            bint operator!=(const iterator&)
        cppclass reverse_iterator:
            pair[T, U]& operator*()
            reverse_iterator& operator++()
            reverse_iterator& operator--()
            bint operator==(const reverse_iterator&)
            bint operator!=(const reverse_iterator&)
        cppclass const_iterator:
            const_iterator(iterator)
            const pair[T, U]& operator*()
            const_iterator& operator++()
            const_iterator& operator--()
            bint operator==(const const_iterator&)
            bint operator!=(const const_iterator&)
        cppclass const_reverse_iterator:
            const_reverse_iterator(reverse_iterator)
            const pair[T, U]& operator*()
            const_reverse_iterator& operator++()
            const_reverse_iterator& operator--()
            bint operator==(const const_reverse_iterator&)
            bint operator!=(const const_reverse_iterator&)
        map() except +
        map(map&) except +
        #map(key_compare&)
        U& operator[](const T&)
        #map& operator=(map&)
        bint operator==(map&, map&)
        bint operator!=(map&, map&)
        bint operator<(map&, map&)
        bint operator>(map&, map&)
        bint operator<=(map&, map&)
        bint operator>=(map&, map&)
        U& at(const T&) except +
        const U& const_at "at"(const T&) except +
        iterator begin()
        const_iterator const_begin "begin" ()
        void clear()
        size_t count(const T&)
        bint empty()
        iterator end()
        const_iterator const_end "end" ()
        pair[iterator, iterator] equal_range(const T&)
        pair[const_iterator, const_iterator] const_equal_range "equal_range"(const T&)
        iterator erase(iterator)
        iterator const_erase "erase"(const_iterator)
        iterator erase(const_iterator, const_iterator)
        size_t erase(const T&)
        iterator find(const T&)
        const_iterator const_find "find" (const T&)
        pair[iterator, bint] insert(const pair[T, U]&) except +
        iterator insert(const_iterator, const pair[T, U]&) except +
        void insert[InputIt](InputIt, InputIt) except +
        #key_compare key_comp()
        iterator lower_bound(const T&)
        const_iterator const_lower_bound "lower_bound"(const T&)
        size_t max_size()
        reverse_iterator rbegin()
        const_reverse_iterator const_rbegin "rbegin"()
        reverse_iterator rend()
        const_reverse_iterator const_rend "rend"()
        size_t size()
        void swap(map&)
        iterator upper_bound(const T&)
        const_iterator const_upper_bound "upper_bound"(const T&)
        #value_compare value_comp()

    cdef cppclass multimap[T, U, COMPARE=*, ALLOCATOR=*]:
        ctypedef T key_type
        ctypedef U mapped_type
        ctypedef pair[const T, U] value_type
        ctypedef COMPARE key_compare
        ctypedef ALLOCATOR allocator_type
        cppclass iterator:
            pair[T, U]& operator*()
            iterator& operator++()
            iterator& operator--()
            bint operator==(const iterator&)
            bint operator!=(const iterator&)
        cppclass reverse_iterator:
            pair[T, U]& operator*()
            reverse_iterator& operator++()
            reverse_iterator& operator--()
            bint operator==(const reverse_iterator&)
            bint operator!=(const reverse_iterator&)
        cppclass const_iterator:
            const_iterator(iterator)
            const pair[T, U]& operator*()
            const_iterator& operator++()
            const_iterator& operator--()
            bint operator==(const const_iterator&)
            bint operator!=(const const_iterator&)
        cppclass const_reverse_iterator:
            const_reverse_iterator(reverse_iterator)
            const pair[T, U]& operator*()
            const_reverse_iterator& operator++()
            const_reverse_iterator& operator--()
            bint operator==(const const_reverse_iterator&)
            bint operator!=(const const_reverse_iterator&)
        multimap() except +
        multimap(const multimap&) except +
        #multimap(key_compare&)
        #multimap& operator=(multimap&)
        bint operator==(const multimap&, const multimap&)
        bint operator!=(const multimap&, const multimap&)
        bint operator<(const multimap&, const multimap&)
        bint operator>(const multimap&, const multimap&)
        bint operator<=(const multimap&, const multimap&)
        bint operator>=(const multimap&, const multimap&)
        iterator begin()
        const_iterator const_begin "begin"()
        void clear()
        size_t count(const T&)
        bint empty()
        iterator end()
        const_iterator const_end "end"()
        pair[iterator, iterator] equal_range(const T&)
        pair[const_iterator, const_iterator] const_equal_range "equal_range"(const T&)
        iterator erase(iterator)
        iterator const_erase "erase"(const_iterator)
        iterator erase(const_iterator, const_iterator)
        size_t erase(const T&)
        iterator find(const T&)
        const_iterator const_find "find"(const T&)
        iterator insert(const pair[T, U]&) except +
        iterator insert(const_iterator, const pair[T, U]&) except +
        void insert[InputIt](InputIt, InputIt) except +
        #key_compare key_comp()
        iterator lower_bound(const T&)
        const_iterator const_lower_bound "lower_bound"(const T&)
        size_t max_size()
        reverse_iterator rbegin()
        const_reverse_iterator const_rbegin "rbegin"()
        reverse_iterator rend()
        const_reverse_iterator const_rend "rend"()
        size_t size()
        void swap(multimap&)
        iterator upper_bound(const T&)
        const_iterator const_upper_bound "upper_bound"(const T&)
        #value_compare value_comp()