1 /* -*- c-basic-offset: 2 -*- */
2 /*
3   Copyright(C) 2015-2018  Brazil
4   Copyright(C) 2018-2021  Sutou Kouhei <kou@clear-code.com>
5 
6   This library is free software; you can redistribute it and/or
7   modify it under the terms of the GNU Lesser General Public
8   License as published by the Free Software Foundation; either
9   version 2.1 of the License, or (at your option) any later version.
10 
11   This library is distributed in the hope that it will be useful,
12   but WITHOUT ANY WARRANTY; without even the implied warranty of
13   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14   Lesser General Public License for more details.
15 
16   You should have received a copy of the GNU Lesser General Public
17   License along with this library; if not, write to the Free Software
18   Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
19 */
20 module groonga_d.obj;
21 
22 
23 private static import groonga_d.groonga;
24 private static import groonga_d.option;
25 
26 extern(C):
27 nothrow @nogc:
28 
29 /+
30 #include <groonga/option.h>
31 
32 /* Just for backward compatibility. Use grn_obj_is_true() instead. */
33 #define GRN_OBJ_IS_TRUE(ctx, obj, result) result = grn_obj_is_true(ctx, obj);
34 +/
35 
36 //GRN_API
37 bool grn_obj_is_true(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
38 
39 //GRN_API
40 bool grn_obj_is_temporary(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
41 
42 //GRN_API
43 groonga_d.groonga.grn_bool grn_obj_is_builtin(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
44 
45 //GRN_API
46 groonga_d.groonga.grn_bool grn_obj_is_bulk(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
47 
48 //GRN_API
49 groonga_d.groonga.grn_bool grn_obj_is_text_family_bulk(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
50 
51 //GRN_API
52 groonga_d.groonga.grn_bool grn_obj_is_number_family_bulk(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
53 
54 //GRN_API
55 bool grn_obj_is_vector(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
56 
57 //GRN_API
58 bool grn_obj_is_weight_vector(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
59 
60 //GRN_API
61 bool grn_obj_is_uvector(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
62 
63 //GRN_API
64 bool grn_obj_is_weight_uvector(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
65 
66 //GRN_API
67 bool grn_obj_is_db(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
68 
69 //GRN_API
70 groonga_d.groonga.grn_bool grn_obj_is_table(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
71 
72 //GRN_API
73 bool grn_obj_is_table_with_key(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
74 
75 //GRN_API
76 bool grn_obj_is_table_with_value(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
77 
78 //GRN_API
79 bool grn_obj_is_lexicon(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
80 
81 //GRN_API
82 bool grn_obj_is_lexicon_without_data_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
83 
84 //GRN_API
85 bool grn_obj_is_tiny_hash_table(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
86 
87 //GRN_API
88 groonga_d.groonga.grn_bool grn_obj_is_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
89 
90 //GRN_API
91 groonga_d.groonga.grn_bool grn_obj_is_scalar_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
92 
93 //GRN_API
94 bool grn_obj_is_text_family_scalar_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
95 
96 //GRN_API
97 bool grn_obj_is_number_family_scalar_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
98 
99 //GRN_API
100 groonga_d.groonga.grn_bool grn_obj_is_vector_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
101 
102 //GRN_API
103 groonga_d.groonga.grn_bool grn_obj_is_weight_vector_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
104 
105 //GRN_API
106 bool grn_obj_is_reference_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
107 
108 //GRN_API
109 groonga_d.groonga.grn_bool grn_obj_is_data_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
110 
111 //GRN_API
112 groonga_d.groonga.grn_bool grn_obj_is_index_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
113 
114 //GRN_API
115 groonga_d.groonga.grn_bool grn_obj_is_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
116 
117 //GRN_API
118 groonga_d.groonga.grn_bool grn_obj_is_id_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
119 
120 //GRN_API
121 groonga_d.groonga.grn_bool grn_obj_is_key_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
122 
123 //GRN_API
124 bool grn_obj_is_value_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
125 
126 //GRN_API
127 bool grn_obj_is_score_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
128 
129 //GRN_API
130 bool grn_obj_is_referable_score_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
131 
132 //GRN_API
133 bool grn_obj_is_nsubrecs_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
134 
135 //GRN_API
136 bool grn_obj_is_max_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
137 
138 //GRN_API
139 bool grn_obj_is_min_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
140 
141 //GRN_API
142 bool grn_obj_is_sum_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
143 
144 //GRN_API
145 bool grn_obj_is_avg_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
146 
147 //GRN_API
148 bool grn_obj_is_mean_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
149 
150 //GRN_API
151 bool grn_obj_is_column_value_accessor(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
152 
153 //GRN_API
154 groonga_d.groonga.grn_bool grn_obj_is_type(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
155 
156 //GRN_API
157 groonga_d.groonga.grn_bool grn_obj_is_text_family_type(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
158 
159 //GRN_API
160 groonga_d.groonga.grn_bool grn_obj_is_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
161 
162 //GRN_API
163 groonga_d.groonga.grn_bool grn_obj_is_tokenizer_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
164 
165 //GRN_API
166 groonga_d.groonga.grn_bool grn_obj_is_function_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
167 
168 //GRN_API
169 groonga_d.groonga.grn_bool grn_obj_is_selector_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
170 
171 //GRN_API
172 groonga_d.groonga.grn_bool grn_obj_is_selector_only_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
173 
174 //GRN_API
175 groonga_d.groonga.grn_bool grn_obj_is_normalizer_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
176 
177 //GRN_API
178 groonga_d.groonga.grn_bool grn_obj_is_token_filter_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
179 
180 //GRN_API
181 groonga_d.groonga.grn_bool grn_obj_is_scorer_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
182 
183 //GRN_API
184 groonga_d.groonga.grn_bool grn_obj_is_window_function_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
185 
186 //GRN_API
187 bool grn_obj_is_aggregator_proc(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
188 
189 //GRN_API
190 groonga_d.groonga.grn_bool grn_obj_is_expr(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
191 
192 //GRN_API
193 bool grn_obj_is_visible(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
194 
195 //GRN_API
196 groonga_d.groonga.grn_rc grn_obj_set_visibility(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj, bool is_visible);
197 
198 //GRN_API
199 bool grn_obj_have_source(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
200 
201 //GRN_API
202 bool grn_obj_is_token_column(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
203 
204 //GRN_API
205 groonga_d.groonga.grn_rc grn_obj_cast(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* src, groonga_d.groonga.grn_obj* dest, groonga_d.groonga.grn_bool add_record_if_not_exist);
206 
207 //GRN_API
208 groonga_d.groonga.grn_rc grn_obj_reindex(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
209 
210 //GRN_API
211 void grn_obj_touch(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj, groonga_d.groonga.grn_timeval* tv);
212 
213 //GRN_API
214 uint grn_obj_get_last_modified(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
215 
216 //GRN_API
217 groonga_d.groonga.grn_bool grn_obj_is_dirty(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
218 
219 //GRN_API
220 const (char)* grn_obj_set_flag_to_string(int flags);
221 
222 //GRN_API
223 const (char)* grn_obj_type_to_string(ubyte type);
224 
225 //GRN_API
226 groonga_d.groonga.grn_bool grn_obj_name_is_column(groonga_d.groonga.grn_ctx* ctx, const (char)* name, int name_len);
227 
228 //GRN_API
229 groonga_d.groonga.grn_bool grn_obj_is_corrupt(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
230 
231 //GRN_API
232 size_t grn_obj_get_disk_usage(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
233 
234 //GRN_API
235 groonga_d.groonga.grn_rc grn_obj_set_option_values(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj, const (char)* name, int name_length, groonga_d.groonga.grn_obj* values);
236 
237 //GRN_API
238 groonga_d.option.grn_option_revision grn_obj_get_option_values(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj, const (char)* name, int name_length, groonga_d.option.grn_option_revision revision, groonga_d.groonga.grn_obj* values);
239 
240 //GRN_API
241 groonga_d.groonga.grn_rc grn_obj_clear_option_values(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);
242 
243 //GRN_API
244 groonga_d.groonga.grn_rc grn_obj_to_script_syntax(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj, groonga_d.groonga.grn_obj* buffer);
245 
246 //GRN_API
247 groonga_d.groonga.grn_rc grn_obj_warm(groonga_d.groonga.grn_ctx* ctx, groonga_d.groonga.grn_obj* obj);